Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung der ASP.NET-Konfigurationsdatei Web.config

Detaillierte Erläuterung der ASP.NET-Konfigurationsdatei Web.config

高洛峰
高洛峰Original
2017-01-13 13:40:361268Durchsuche

Die Web.config-Datei ist eine XML-Textdatei, die zum Speichern der Konfigurationsinformationen der ASP.NET-Webanwendung verwendet wird (z. B. die am häufigsten verwendete Authentifizierungsmethode zum Festlegen der ASP.NET-Webanwendung). werden in der Anwendung in jedem Verzeichnis angezeigt. Wenn Sie über VB.NET eine neue Webanwendung erstellen, wird im Stammverzeichnis standardmäßig automatisch eine Standarddatei Web.config erstellt, einschließlich der Standardkonfigurationseinstellungen, und alle Unterverzeichnisse erben ihre Konfigurationseinstellungen. Wenn Sie die Konfigurationseinstellungen eines Unterverzeichnisses ändern möchten, können Sie im Unterverzeichnis eine neue Web.config-Datei erstellen. Es kann zusätzlich zu den vom übergeordneten Verzeichnis geerbten Konfigurationsinformationen Konfigurationsinformationen bereitstellen und auch im übergeordneten Verzeichnis definierte Einstellungen überschreiben oder ändern.

Detaillierte Erläuterung der ASP.NET-Konfigurationsdatei Web.config

Änderungen an der Web.config-Datei während der Laufzeit können ohne Neustart des Dienstes wirksam werden (Hinweis: Ausnahme im Abschnitt ). Natürlich ist die Datei Web.config erweiterbar. Sie können neue Konfigurationsparameter anpassen und Konfigurationsabschnittshandler schreiben, um sie zu verarbeiten.

1. web.config-Konfigurationsdatei (Standardkonfigurationseinstellungen)

Alle folgenden Codes sollten sich in

und

, zu Lernzwecken unten. Die Beispiele werden weggelassen dieses XML-Tag

1, Funktion: ASP.NET-Authentifizierungsunterstützung konfigurieren (für Windows, Forms, PassPort, Keine). Dieses Element kann nur auf Computer-, Site- oder Anwendungsebene deklariert werden. Das Element muss mit dem Abschnitt verwendet werden.

Beispiel:

Das folgende Beispiel ist eine formularbasierte Authentifizierungskonfigurationsseite. Wenn ein nicht angemeldeter Benutzer auf eine Webseite zugreift, die eine Authentifizierung erfordert, springt die Webseite automatisch zur Anmeldeseite.

Das Element loginUrl stellt den Namen der Anmeldewebseite dar und name stellt den Cookie-Namen dar
<authentication mode="Forms" >  
<forms loginUrl="logon.aspx" name=".FormsAuthCookie"/>  
</authentication>

2 Client für den Zugriff auf URL-Ressourcen (z. B. anonymen Benutzerzugriff zulassen). Dieses Element kann auf jeder Ebene deklariert werden (Computer, Site, Anwendung, Unterverzeichnis oder Seite). Erforderlich in Verbindung mit dem Abschnitt

Beispiel: Das folgende Beispiel verbietet den Zugriff durch anonyme Benutzer

Hinweis: Sie können user.identity.name verwenden, um den aktuellen authentifizierten Benutzernamen abzurufen. Sie können web.Security verwenden. Die FormsAuthentication.RedirectFromLoginPage-Methode leitet den authentifizierten Benutzer auf die Seite um, die der Benutzer gerade angefordert hat.

3. Funktion: Konfigurieren Sie alle von ASP.NET verwendeten Kompilierungseinstellungen. Das Standard-Debug-Attribut ist „True“. Es sollte auf „True“ gesetzt werden, nachdem das Programm kompiliert und zur Verwendung bereitgestellt wurde (detaillierte Anweisungen finden Sie in der Datei Web.config, Beispiele werden hier weggelassen)
<authorization>  
<deny users="?"/>  
</authorization>

4. customErrors>

Rolle: Bereitstellung von Informationen zu benutzerdefinierten Fehlermeldungen für ASP.NET-Anwendungen. Sie gilt nicht für Fehler, die in XML-Webdiensten auftreten.

Beispiel: Wenn ein Fehler auftritt, springen Sie von der Webseite zu einer benutzerdefinierten Fehlerseite.

Das Element defaultRedirect stellt den Namen der angepassten Fehler-Webseite dar. Das Moduselement bedeutet: benutzerdefinierte (freundliche) Informationen für Benutzer anzeigen, die nicht auf dem lokalen Webserver ausgeführt werden.

5. Funktion: ASP.NET HTTP-Laufzeiteinstellungen konfigurieren. Dieser Abschnitt kann auf Computer-, Standort-, Anwendungs- und Unterverzeichnisebene deklariert werden.

Beispiel: Steuern Sie die maximale Größe von Benutzer-Upload-Dateien auf 4 MB, die maximale Zeit auf 60 Sekunden und die maximale Anzahl von Anfragen auf 100
<customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly">  
</customErrors>

Funktion: Identifiziert seitenspezifische Konfigurationseinstellungen (z. B. ob der Sitzungsstatus aktiviert werden soll, der Ansichtsstatus, ob Benutzereingaben erkannt werden sollen usw.). können auf Computer-, Site-, Anwendungs- und Unterverzeichnisebene deklariert werden.

Beispiel: Nicht erkennen, ob der vom Benutzer im Browser eingegebene Inhalt potenziell gefährliche Daten enthält (Hinweis: Dieses Element ist standardmäßig auf Erkennung eingestellt. Wenn Sie die Nichterkennung verwenden, müssen Sie die des Benutzers kodieren oder überprüfen Eingabe) wird der verschlüsselte Ansichtsstatus überprüft, wenn die Seite vom Client zurückgesendet wird, um sicherzustellen, dass der Ansichtsstatus auf der Clientseite nicht manipuliert wurde. (Hinweis: Dieses Element wird standardmäßig nicht überprüft)

<httpRuntime maxRequestLength="4096" executi appRequestQueueLimit="100"/>
7.

Funktion: Sitzungsstatuseinstellungen für die aktuelle Anwendung konfigurieren (z. B. festlegen, ob die Sitzung aktiviert werden soll). Status, Sitzungsstatus, Speicherort).

Beispiel:

<pages buffer="true" enableViewStateMac="true" validateRequest="false"/>
Hinweis:

mode="InProc" bedeutet: Sitzungsstatus lokal speichern (Sie können ihn auch auf einem Remote-Server oder SAL speichern server Oder Sitzungsstatus nicht aktivieren)

cookieless="true" bedeutet: Sitzungsstatus aktivieren, wenn der Browser des Benutzers keine Cookies unterstützt (Standard ist False)

timeout="20" bedeutet: Sitzung kann Anzahl der Minuten im Ruhezustand
<sessionState mode="InProc" cookieless="true" timeout="20"/>  
</sessionState>

8,

Funktion: Konfigurieren Sie den ASP.NET-Ablaufverfolgungsdienst, der hauptsächlich zum Testen von Programmen verwendet wird, um festzustellen, wo Fehler auftreten.

Beispiel: Das Folgende ist die Standardkonfiguration in Web.config:

Hinweis:

enabled="false"表示不启用跟踪;requestLimit="10"表示指定在服务器上存储的跟踪请求的数目

pageOutput="false"表示只能通过跟踪实用工具访问跟踪输出;

traceMode="SortByTime"表示以处理跟踪的顺序来显示跟踪信息

localOnly="true" 表示跟踪查看器 (trace.axd) 只用于宿主 Web 服务器

二、自定义Web.config文件配置节

自定义Web.config文件配置节过程分为两步。

一是在在配置文件顶部 标记之间声明配置节的名称和处理该节中配置数据的 .NET Framework 类的名称。

二是在 区域之后为声明的节做实际的配置设置。

示例:创建一个节存储数据库连接字符串

<configuration>  
<configSections>  
<section name="appSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>  
</configSections> 
<appSettings>  
<add key="scon" value="server=a;database=northwind;uid=sa;pwd=123"/>  
</appSettings>  
<system.web>  
......  
</system.web>  
</configuration>

三、访问Web.config文件

你可以通过使用ConfigurationSettings.AppSettings 静态字符串集合来访问 Web.config 文件示例:获取上面例子中建立的连接字符串。

四、创建Web.config文件

1.在“解决方案资源管理器”中,单击“刷新”图标以确认应用程序还没有 Web.config 文件。

如果已使用网站管理工具或某些其他方式来配置应用程序,则可能已自动创建了 Web.config 文件。单击“刷新”更新文件列表。

2.在“解决方案资源管理器”中,右击网站名称,然后单击“添加新项”。

3.在“模板”窗口中,单击“Web 配置文件”。

“名称”文本框中的文件名应为Web.config。可以为该文件提供其他名称,不过这是默认名称。.config 文件扩展名可防止 ASP.NET 下载相应文件。

4.单击“添加”创建该文件,然后将其打开进行编辑。

该文件包含本主题后面“示例”部分中显示的代码,并具有一些初始默认值。应用程序从 %SystemRoot%\Microsoft.NET\Framework\\CONFIG 目录下的 Machine.config 和 Web.config 文件继承所有配置设置,但在此处看不到这些默认设置。如果要重写继承的默认设置或添加 httpHandlers 元素(ASP.NET 设置架构) 等集合元素,则只需创建应用程序级别和目录级别的 Web.config 文件。

若要查看当前应用程序的所有配置设置,可以运行主题如何:以编程方式查看继承的配置设置和本地配置设置中包含的代码。也可以查看 %SystemRoot%\Microsoft.NET\Framework\\CONFIG 目录下的Machine.config.comments 或 Web.config.comments 文件(这两个文件也包含有用的注释),但这两个文件将不会包含所有运行时设置,请参见如何:以编程方式查看继承的配置设置和本地配置设置。

5.如果更改了 Web.config 文件,则保存该文件。

保存 Web.config 文件会重新启动应用程序。也可以选择使用单个节元素的 configSource 属性指向某个辅助配置文件,更改辅助配置文件不会导致应用程序重新启动。有关更多信息,请参见节元素所继承的常规属性中的 configSource。

Web.config是asp.net应用程序中一个很重要的配置文件,通过Web.config文件可以方便我们进行开发和部署asp.net应用程序。

通过本文的介绍,希望对你有帮助,对ASP.NET配置文件Web.config有更深入的了解。

更多Detaillierte Erläuterung der ASP.NET-Konfigurationsdatei Web.config相关文章请关注PHP中文网!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn