如何:创建 Web.config 文件
更新:2007 年 11 月
ASP.NET 使用以层次结构组织的 XML 文本文件(每个文件都名为 Web.config)来存储控制网站工作方式的设置。使用 ASP.NET 配置系统的功能,可以配置整个服务器、ASP.NET 应用程序或单独的页。本主题介绍如何在 Visual Web Developer 中创建 Web.config 文件。
创建 Web.config 文件
在**“解决方案资源管理器”中,单击“刷新”**图标以确认应用程序还没有 Web.config 文件。
如果已使用网站管理工具或某些其他方式来配置应用程序,则可能已自动创建了 Web.config 文件。单击**“刷新”**更新文件列表。
在**“解决方案资源管理器”中,右击网站名称,然后单击“添加新项”**。
在**“模板”窗口中,单击“Web 配置文件”**。
**“名称”**文本框中的文件名应为 Web.config。可以为该文件提供其他名称,不过这是默认名称。.config 文件扩展名可防止 ASP.NET 下载相应文件。
单击**“添加”**创建该文件,然后将其打开进行编辑。
该文件包含本主题后面“示例”部分中显示的代码,并具有一些初始默认值。应用程序从 %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 文件(这两个文件也包含有用的注释),但这两个文件将不会包含所有运行时设置,请参见如何:以编程方式查看继承的配置设置和本地配置设置。
如果更改了 Web.config 文件,则保存该文件。
保存 Web.config 文件会重新启动应用程序。也可以选择使用单个节元素的 configSource 属性指向某个辅助配置文件,更改辅助配置文件不会导致应用程序重新启动。有关更多信息,请参见节元素所继承的常规属性中的 configSource。
使用 IntelliSense 编辑配置设置
在 Visual Web Developer 中打开 Web.config 文件。
在编辑窗口中,将光标放在某行上的 <system.web> </system.web> 标记内,但不要放在其他任何标记内。
键入小于号 (<) 开始一个新元素。
出现一个下拉列表,该列表提供可在此插入点添加的有效元素。或者,也可以按**“Ctrl+J”**显示该下拉列表而无需键入小于号。
选择**“anonymousIdentification”**。
anonymousIdentification 元素(ASP.NET 设置架构) 元素即放置在 Web.config 文件中并结束。如果元素是由结束标记结束的,则存在可设置的可用子元素。如果元素的结束方式与下面的 anonymousIdentification 元素相同,则不存在要设置的可用子元素。
<anonymousIdentification />
将光标放在 <anonymousIdentification /> 标记内,然后按空格键。
出现一个下拉列表,该列表提供可添加到 anonymousIdentification 元素的有效属性。或者,也可以按**“Ctrl+J”**显示该下拉列表而无需按空格键。
选择**“启用”**。
enabled 属性被放置在 Web.config 文件中,由于它是一个布尔属性,在一个下拉列表中提供了 true 和 false 值。
选择**“false”**。这是系统默认值。
IntelliSense 系统会提示插入点的可用元素和可用属性。有时不会提供专用属性。例如,在配置 siteMap 元素(ASP.NET 设置架构)等元素的 providers 元素时,可用属性是不同的,具体取决于要添加的提供程序的类型。IntelliSense 不显示这些属性,因为它们取决于 type 属性的值。
将 enabled 属性的值更改为无效值 "falsex"。
IntelliSense 系统提供验证检查,并在所有未通过验证的文本下面显示一条波浪线。
示例
下面的代码示例演示 Visual Web Developer 创建的 Web.config 文件的初始内容。为 compilation 和 authentication 元素提供的是默认设置。若要启用 ASP.NET 调试,所需全部操作是将 compilation 元素的 debug 属性更改为 true。可以在 system.web 元素中出现的所有元素都在 ASP.NET 配置设置 中进行了说明。
<?xml version="1.0"?>
<!--
Note: As an alternative to hand editing this file you can use the
Web Site Administration Tool to configure settings for your application. Use
the Web site->Asp.Net Configuration option in Visual Studio.
A full list of settings and comments can be found in
machine.config.comments usually located in
\Windows\Microsoft.Net\Framework\v2.x\Config
-->
<configuration xmlns="https://schemas.microsoft.com/.NetConfiguration/v2.0">
<appSettings/>
<connectionStrings/>
<system.web>
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
affects performance, set this value to true only
during development.
-->
<compilation debug="false"/>
<!--
The <authentication> section enables configuration
of the security authentication mode used by
ASP.NET to identify an incoming user.
-->
<authentication mode="Windows"/>
<!--
The <customErrors> section enables configuration
of what to do if/when an unhandled error occurs
during the execution of a request. Specifically,
it enables developers to configure html error pages
to be displayed in place of a error stack trace.
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm"/>
<error statusCode="404" redirect="FileNotFound.htm"/>
</customErrors>
-->
</system.web>
</configuration>
安全性
在应用程序的配置文件中存储敏感信息时,应使用受保护的配置对敏感值进行加密。有关配置文件的这一问题以及其他安全问题的更多信息,请参见 保证 ASP.NET 配置的安全。