Home >Backend Development >C#.Net Tutorial >Introduction to the Web.config configuration file in ASP.NET

Introduction to the Web.config configuration file in ASP.NET

巴扎黑
巴扎黑Original
2017-08-16 16:11:041530browse

This article mainly introduces the ASP.NET Web.config configuration file in detail and teaches you how to configure the Web.config file. It has certain reference value. Interested friends can refer to it

Analysis:

.NET Web application configuration information (such as the most commonly used authentication method for setting ASP.Net Web applications), which can appear in every step of the application in the directory. When you create a new Web application through VB.NET, a default Web.config file will be automatically created in the root directory by default, including default configuration settings, and all subdirectories will inherit its configuration settings. If you want to modify the configuration settings of a subdirectory, you can create a new Web.config file in the subdirectory. It can provide configuration information in addition to the configuration information inherited from the parent directory, and can also override or modify settings defined in the parent directory.
Modifications to the Web.config file during runtime will take effect without restarting the service (Note: Exception in the 8b8cd1dbb5a33604e3cb18bedb4a3ff2 section). Of course the Web.config file is extensible. You can customize new configuration parameters and write configuration section handlers to handle them.

1. web.config configuration file (default configuration settings)

All the following codes should be located between the following codes. In order to be more concise, The following examples omit this XML tag.


< configuration>
  < system.web>
  < /system.web>
< /configuration>

1、80d2680783d84d323c0b46b6b9a1b282 Section

## Function: Configure ASP.NET Authentication support (for Windows, Forms, PassPort, None). This element can only be declared at the computer, site, or application level. The 80d2680783d84d323c0b46b6b9a1b282 element must be used with the e4313658e6823a84c0d534d9c597317f section.

eg: The following example is a form-based authentication configuration site. When a user who is not logged in accesses a webpage that requires authentication, the webpage automatically jumps to the login webpage.


< authentication mode="Forms">
  < forms loginUrl="logon.aspx" name=".FormsAuthCookie"/>
< /authentication>

The element loginUrl represents the name of the login web page, and name represents the cookie name.

2. e4313658e6823a84c0d534d9c597317f section
## Function: Control client access to URL resources (such as allowing anonymous users to access ). This element can be declared at any level (computer, site, application, subdirectory, or page). Required in conjunction with the 80d2680783d84d323c0b46b6b9a1b282 section.

Example: The following example prohibits access by anonymous users


< authorization>
 < deny users="?"/>
< /authorization>

Note: You can use user.identity.name to get the current authenticated user name; you can Use the web.Security.FormsAuthentication.RedirectFromLoginPage method to redirect authenticated users to the page the user just requested.

3. eb1e998bd0c2951b98f5b6c85c7e4615 Section
Function: Configure all compilation settings used by ASP.NET. The default debug attribute is "True". It should be set to True after the program is compiled and delivered for use (details are described in the Web.config file, examples are omitted here)

4 , 930ac17b94b9e98609d20e97126e0d94
Function: Provide information about custom error messages for ASP.NET applications. It does not apply to errors that occur in XML Web services.

Example: When an error occurs, jump the web page to a custom error page.


< customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly"> 
< /customErrors>

The element defaultRedirect represents the name of the customized error web page. The mode element means: display custom (friendly) information to users who are not running on the local web server.


5. ed4fc545903c54f8016479f974509b32 Section
## Function: Configure ASP.NET HTTP runtime settings. This section can be declared at the computer, site, application, and subdirectory levels.
Example: Control the maximum size of user upload files to 4M, the maximum time to 60 seconds, and the maximum number of requests to 100.


e2cef088c7393c17748e9eef2e05d1ef3831d64b9ff08109d75152437feda733


6、 98a781c16ebd9970b20c936d9f199ebe


作用:标识特定于页的配置设置(如是否启用会话状态、视图状态,是否检测用户的输入等)。98a781c16ebd9970b20c936d9f199ebe可以在计算机、站点、应用程序和子目录级别声明。
 示例:不检测用户在浏览器输入的内容中是否存在潜在的危险数据(注:该项默认是检测,如果你使用了不检测,一要对用户的输入进行编码或验证),在从客户端回发页时将检查加密的视图状态,以验证视图状态是否已在客户端被篡改。(注:该项默认是不验证)

510da866e84dc56be06a79ed75c153a1

7、5717e0daa4654c02232c8f843dae6721

 作用:为当前应用程序配置会话状态设置(如设置是否启用会话状态,会话状态保存位置)。
 示例:


< sessionState mode="InProc" cookieless="true" timeout="20"/>
< /sessionState>

 注:
 mode="InProc"表示:在本地储存会话状态(你也可以选择储存在远程服务器或SAL服务器中或不启用会话状态)
 cookieless="true"表示:如果用户浏览器不支持Cookie时启用会话状态(默认为False)
 timeout="20"表示:会话可以处于空闲状态的分钟数

 8、aaee0798d61f0c1688dd8c23d7e1cc45 

 作用:配置 ASP.NET 跟踪服务,主要用来程序测试判断哪里出错。
 示例:以下为Web.config中的默认配置:

ee811ff3d61828767fb5c6ffab003cce

注:
 enabled="false"表示不启用跟踪;requestLimit="10"表示指定在服务器上存储的跟踪请求的数目
 pageOutput="false"表示只能通过跟踪实用工具访问跟踪输出;
 traceMode="SortByTime"表示以处理跟踪的顺序来显示跟踪信息;
 localOnly="true" 表示跟踪查看器 (trace.axd) 只用于宿主 Web 服务器;

9、1dcc4c920d99d48189de261dfba48f61


<system.webServer>
  <security>
   <requestFiltering>
    <requestLimits maxAllowedContentLength="2147483648"/>
   </requestFiltering>
  </security>
</system.webServer>

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

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

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

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


< 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\725e7c8a0cf2bfbdc143d67566e91876\CONFIG 目录下的 Machine.config 和 Web.config 文件继承所有配置设置,但在此处看不到这些默认设置。如果要重写继承的默认设置或添加 httpHandlers 元素(ASP.NET 设置架构) 等集合元素,则只需创建应用程序级别和目录级别的 Web.config 文件。

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

5. If you changed the Web.config file, save the file.

Saving the Web.config file will restart the application. You can also choose to use the configSource attribute of a single section element to point to a secondary configuration file, and changing the secondary configuration file will not cause the application to restart. For more information, see configSource in General Properties Inherited by Section Elements.

Web.config is a very important configuration file in asp.net applications. The Web.config file can facilitate us to develop and deploy asp.net applications. Through the introduction of this article, I hope it will be helpful to you and for your reference.

The above is the detailed content of Introduction to the Web.config configuration file in ASP.NET. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn