WebConfig中的配置信息
WebConfig出现在应用程序的每一个目录中通过C#NET新建一个Web应用程序后默认情况下会在根目录自动创建一个WebConfig文件包括系统的默认设置所有的子目录都继承于根目录下的设置如果想修改子目录的设置可以在该子目录下新建一个WebConfig文件子文件夹下WebConfig文件可以提供除从父目录继承的配置信息以外的配置信息也可以重写或修改父目录中定义的设置在运行时对WebConfig文件的修改不需要重启服务即可生效(注意<processModel> 节例外)WebConfig文件是可以扩展的可以自定义新配置参数并编写配置节处理程序以对它进行处理
WebConfig配置文件(默认的配置设置)以下所有的代码都应该位于
<configuration>
<systemweb>
</systemweb>
</configuration>
之间下面的示例都省略了这段XML标记
<authentication>节
作用配置ASPNET身份验证支持(为WindowsFormsPassPortNone 种)该元素只能在计算机站点或应用程序级别声明<authentication>元素必须与<authorization>节配合使用
以下示例为基于窗体(Forms)的身份验证配置站点当未登录的用户访问需要身份验证的网页时网页将自动跳转到登录网页
<authentication mode=Forms >
<forms loginUrl=logonaspx name=FormsAuthCookie/>
</authentication>
loginUrl表示登录网页的名称
name表示Cookie名称
<authorization>节
作用控制对URL资源的客户端访问(如允许匿名用户访问)此元素可以在任何级别(计算机站点应用程序子目录或页)上声明必须与<authentication>节配合使用
下面来看一个禁止匿名用户访问的示例
<authorization>
<deny users=?/>
</authorization>
提示可以使用useridentityname来获取已验证的当前用户名可以使用webSecurity FormsAuthenticationRedirectFromLoginPage方法将已验证的用户重定向到用户刚才请求的页面
<compilation>节
作用配置ASPNET使用的所有编译设置默认的debug属性为True在程序编译完成交付使用之后应将其设为True(WebConfig文件中有详细说明此处省略示例)
<customErrors>节
作用为ASPNET 应用程序提供有关自定义错误的信息(不适用于XML Web Services中发生的错误)
示例当发生错误时将网页跳转到自定义的错误页面
<customErrors defaultRedirect=ErrorPageaspx mode=RemoteOnly>
</customErrors>
defaultRedirect表示自定义的错误网页的名称
mode元素表示对不在本地 Web 服务器上运行的用户显示自定义(友好的)信息
<httpRuntime>节
作用配置ASPNET HTTP运行库设置该节可以在计算机站点应用程序和子目录级别声明
示例控制用户上传文件最大为MB最长时间为秒最多请求数为
<httpRuntime maxRequestLength=
executionTimeout= appRequestQueueLimit=/>
<pages>节
作用该标识用于特别指定页的配置(如是否启用会话状态视图状态是否检测用户的输入等)<pages>可以在计算机站点应用程序和子目录级别声明
示例不检测用户在浏览器输入的内容中是否存在潜在的危险数据(注意该项默认为检测如果使用了不检测一定要对用户的输入进行编码或验证)在从客户端回发页时将检查加密的视图状态以验证视图状态是否已在客户端被篡改
<pages buffer=true enableViewStateMac=true validateRequest=false/>
<sessionState>节
作用为当前应用程序配置会话状态设置(如设置是否启用会话状态会话状态保存位置)
示例
<sessionState mode=InProc cookieless=true timeout=/>
</sessionState>
mode=InProc表示在本地存储会话状态(可以选择存储在远程服务器或SAL服务器中或不启用会话状态)
cookieless=true表示如果用户浏览器不支持Cookie则启用会话状态(默认为false)
timeout=表示会话可以处于空闲状态的分钟数
<trace>节
作用配置ASPNET跟蹤服务主要用来测试判断程序哪里出错
示例以下为WebConfig中的默认配置
<trace enabled=false requestLimit=
pageOutput=false traceMode=SortByTime
localOnly=true />
enabled=false表示不启用跟蹤
requestLimit=表示指定在服务器上存储的跟蹤请求的数目
pageOutput=false表示只能通过跟蹤实用工具访问跟蹤输出
traceMode=SortByTime表示以处理跟蹤的顺序来显示跟蹤信息
localOnly=true表示跟蹤查看器(traceaxd)只用于宿主Web服务器
返回目录ASPNET项目开发指南
编辑推荐
ASPNET MVC 框架揭秘
ASPNET开发宝典
ASP NET开发培训视频教程