<configuration> 所有.net配置文件所必须的根元素 <system.web> 实际asp.net配置设置的根元素 <!-- 动态调试编译 设置 compilation debug="true" 以启用 aspx 调试。否则,将此值设置为 false 将提高此应用程序的运行时性能。 设置 compilation debug="true" 以将调试符号(.pdb 信息)插入到编译页中。 因为这将创建执行起来较慢的大文件,所以应该只在调试时将此值设置为 true,而在所有其他时候都设置为false。有关更多信息,请参考有关调试 asp.net 文件的文档。 defaultlanguage="c#" 指定动态编译时使用的默认编程语言,它的值可以是compilers标记定义的任何语言。 tempdirectory 指编译过程中存储文件的目录 --> <compilation defaultlanguage="c#" debug="true" /> <!-- 自定义错误信息 设置 customerrors mode="on" 或 "remoteonly" 以启用自定义错误信息,或设置为 "off" 以禁用自定义错误信息。 为每个要处理的错误添加 <error> 标记。 "on" 始终显示自定义(友好的)信息。如果没有提供defaultredirect属性‚则用户将看到一般的错误信息. "off" 始终显示详细的 asp.net 错误信息。显示全部的错误细节 "remoteonly" 只对不在本地 web 服务器上运行的用户显示自定义(友好的)信息。出于安全目的,建议使用此设置,以便不向远程客户端显示应用程序的详细信息。 --> <customerrors mode="remoteonly" /> 使用customerrors 元素,可以配置应用程序响应各种http错误时的行为。例如,通过如下代码,当发生404错误时,就可以把页面重新导向一个友好的页面。 <customerrors defaultredirect=”standarderror.aspx” mode="remoteonly"> <error statuscode=”404” redirect=”filenotfound.htm”/> </customerrors> 当发生http错误时,上面的代码将把用户导向standarderror.aspx页面。如果错误是代码404(即没有发现文件)‚将把用户导向filenotfound.htm。但是‚由于模式设置为remoteonly,所有本地的管理员将会看到真实的错误信息,而不是被导向其它的页面,但远程的客户将会看到自定义的错误页面。 <!-- 身份验证 此节设置应用程序的身份验证策略。可能的模式是 "windows"、 "forms"、 "passport" 和 "none" "none" 不执行身份验证。 "windows" iis 根据应用程序的设置执行身份验证 包含全部的iis身份验证,此外,ntfs在文件和目录上的权限将决定对目录中资源的访问。 (基本、简要或集成 windows)。在 iis 中必须禁用匿名访问。 "forms" 您为用户提供一个输入凭据的自定义窗体(web 页),然后 在您的应用程序中验证他们的身份。用户凭据标记存储在 cookie 中。 使用cookies去指出授权用户。 "passport" 身份验证是通过 microsoft 的集中身份验证服务执行的, 它为成员站点提供单独登录和核心配置文件服务。 --> <authentication mode="windows" /> 下面是使用passport的身份验证的示例。在这个对目录进行配置的示例中,如果用户没有提供有效的passport,则把用户导向login.aspx页面。 <authentication mode=”passport”> <passport redirecturl=”login.aspx”/> </authentication> 下面的示例阐明了怎样使用基于窗体的身份验证,以及怎样把有效的用户名和密码保存在配置文件中: <authentication mode=”forms”> <forms name=”secureapplication” loginurl=”/secureapplication/custlogin.aspx/”> <credentials passwordformat=”clear”> <user name=”admin” password=”admin”/> </credentials> </forms> </authentication> <!-- 授权 此节设置应用程序的授权策略。可以允许或拒绝不同的用户或角色访问 应用程序资源。通配符: "*" 表示任何人,"?" 表示匿名 (未经身份验证的)用户。 --> <authorization> <allow users="*" /> <!-- 允许所有用户 --> <!-- <allow users="[逗号分隔的用户列表]" roles="[逗号分隔的角色列表]"/> <deny users="[逗号分隔的用户列表]" roles="[逗号分隔的角色列表]"/> --> </authorization> <!-- 应用程序级别跟踪记录 应用程序级别跟踪为应用程序中的每一页启用跟踪日志输出。 设置 trace enabled="true" 可以启用应用程序跟踪记录。如果 pageoutput="true",则 在每一页的底部显示跟踪信息。否则,可以通过浏览 web 应用程序 根目录中的 "trace.axd" 页来查看 应用程序跟踪日志。 --> <trace enabled="false" requestlimit="10" pageoutput="false" tracemode="sortbytime" localonly="true" /> 默认状态下,trace元素处于激活状态,但是它的输出没有显示给web页面。在trace元素中也可以定义侦听器,侦听器其实是一些对象,使用那些对象,可以收听、收集和发送各种消息。下面代码中定义的侦听器可以把跟踪信息写到日志文件(即文本文件中): <trace enabled="true" requestlimit=”10” pageoutput=”false”> <listeners> <add name=”tracelistener” type=”system.diagnostics.textwritertracelistener‚system” initializedata=”tracelistener.log”/> </listeners> </trace> <!-- 会话状态设置 默认情况下,asp.net 使用 cookie 来标识哪些请求属于特定的会话。 如果 cookie 不可用,则可以通过将会话标识符添加到 url 来跟踪会话。 若要禁用 cookie,请设置 sessionstate cookieless="true"。 --> 默认状态下,asp.net通过发送用户cookies(当用户关闭他们的浏览器时,cookies将终止),对会话状态进行维护。 <sessionstate mode="inproc" 指asp.net会话状态的维护工作是在本地进行的。 stateconnectionstring="tcpip=127.0.0.1:42424" sqlconnectionstring="data source=127.0.0.1;trusted_connection=yes" cookieless="false" timeout="20" /> <!-- 全球化 此节设置应用程序的全球化设置。 --> web站点的用户经常要发送和接收文本,这是文本编码格式的配置,默认是rtf-8。 <globalization requestencoding="gb2312" responseencoding="gb2312" /> </system.web> appsettings元素 <appsettings>元素处于<system.web>根配置之外,它是<configuration>部分的一个子元素。通过简单的指定一对名称/值,就可以添加配置设置。如: <appsettings> <add key="websitename" value="my new website"/> <add key="welcomemessage" value="welcome to my new website‚friend!"/> </appsettings> </configuration> |