ASP.NET项目开发指南:Web.Config中的配置信息
Web Config中的配置信息
Web Config出现在应用程序的每一个目录中 通过C# NET新建一个Web应用程序后 默认情况下会在根目录自动创建一个Web Config文件 包括系统的默认设置 所有的子目录都继承于根目录下的设置 如果想修改子目录的设置 可以在该子目录下新建一个Web Config文件 子文件夹下Web Config文件可以提供除从父目录继承的配置信息以外的配置信息 也可以重写或修改父目录中定义的设置 在运行时对Web Config文件的修改不需要重启服务即可生效(注意 <processModel> 节例外) Web Config文件是可以扩展的 可以自定义新配置参数并编写配置节处理程序以对它进行处理
Web Config配置文件(默认的配置设置)以下所有的代码都应该位于
<configuration>
<system web>
</system web>
</configuration>
之间 下面的示例都省略了这段XML标记
<authentication>节
作用 配置ASP NET身份验证支持(为Windows Forms PassPort None 种) 该元素只能在计算机 站点或应用程序级别声明 <authentication>元素必须与<authorization>节配合使用
以下示例为基于窗体(Forms)的身份验证配置站点 当未登录的用户访问需要身份验证的网页时 网页将自动跳转到登录网页
<authentication mode= Forms >
<forms loginUrl= logon aspx name= FormsAuthCookie />
</authentication>
loginUrl表示登录网页的名称
name表示Cookie名称
<authorization>节
作用 控制对URL资源的客户端访问(如允许匿名用户访问) 此元素可以在任何级别(计算机 站点 应用程序 子目录或页)上声明 必须与<authentication>节配合使用
下面来看一个禁止匿名用户访问的示例
<authorization>
<deny users= ? />
</authorization>
提示 可以使用user identity name来获取已验证的当前用户名 可以使用web Security FormsAuthentication RedirectFromLoginPage方法将已验证的用户重定向到用户刚才请求的页面
<pilation>节
作用 配置ASP NET使用的所有编译设置 默认的debug属性为True 在程序编译完成交付使用之后应将其设为True(Web Config文件中有详细说明 此处省略示例)
<customErrors>节
作用 为ASP NET 应用程序提供有关自定义错误的信息(不适用于XML Web Services中发生的错误)
示例 当发生错误时 将网页跳转到自定义的错误页面
<customErrors defaultRedirect= ErrorPage aspx mode= RemoteOnly >
</customErrors>
defaultRedirect表示自定义的错误网页的名称
mode元素表示对不在本地 Web 服务器上运行的用户显示自定义(友好的)信息
<Runtime>节
作用 配置ASP NET HTTP运行库设置 该节可以在计算机 站点 应用程序和子目录级别声明
示例 控制用户上传文件最大为 MB 最长时间为 秒 最多请求数为
<Runtime 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>节
作用 配置ASP NET跟踪服务 主要用来测试判断程序哪里出错
示例 以下为Web Config中的默认配置
<trace enabled= false requestLimit=
pageOutput= false traceMode= SortByTime
localOnly= true />
enabled= false 表示不启用跟踪
requestLimit= 表示指定在服务器上存储的跟踪请求的数目
pageOutput= false 表示只能通过跟踪实用工具访问跟踪输出
traceMode= SortByTime 表示以处理跟踪的顺序来显示跟踪信息
localOnly= true 表示跟踪查看器(trace axd)只用于宿主Web服务器
返回目录 ASP NET项目开发指南
编辑推荐
ASP NET MVC 框架揭秘
ASP NET开发宝典
lishixinzhi/Article/program/net/201311/15958