ASP.NET中的配置文件
对
ASP.NET
应用程序而言
,
几乎所有的配置和管理都包含在
web.config
文件中
.
通常开发人员习惯使用手工编码方式编辑
web.config
文件
,
此法不但效率低下
,
而且易出错
!
为解决此问题
,ASP.ENT
推出两个可视化配置管理工具
ASP.NET MMC
管理单元和
web
网站管理工具
,
通过将常用配置内容集成到这两个工具中
,
可以提高工作效率
,
降低出错几率
.
Web.config文件中的配置信息
Web.config
文件主要包括以下几种配置节
.
<authentication>
节
配置
ASP.NET
使用的安全身份验证模式
(Windows,Forms,Passport,None),
以标示查看
ASP.NET
应用程序的用户
.
例如
,
当没有登录的用户访问需要身份验证的网页时
,
使网页自动跳转到登录页的配置如下
:
<authentication mode = “Forms”>
<forms loginUrl =”login.aspx” name =”.FormsAuthCookies”></forms>
</authentication>
其中
loginUrl
表示登录网页的名称
,name
表示
Cookies
名称
.
<authorization>
节
控制对
URL
资源的客户端访问
(
如允许匿名用户访问
)
如禁止匿名用户访问
,
配置如下
:
<authorization>
<deny users =”?” />
</authorization>
<compilation>
节
配置
ASP.ENT
使用的所有编译设置
.
默认的
debug
属性为
False,
用于将调试符号插入到已编译的页面中
.
但这样会影响性能
,
因此只在开发过程中将此值设置为
True.
<customErrors>
节
提供有关自定义错误信息的信息
.
它不适用于
XML Web Service
中发生的错误
.
例如
:
当
ASP.Net
应用程序发生错误时
,
将网页跳转到自定义错误页的配置信息代码如下
:
<customErrors mode =”RemoteOnly” defaultRedirect=”GenericErrorsPage.htm”>
</customErrors>
其中
,defaultRedirect
表示自定义的错误页面的名称
.mode
元素表示对不在本地
web
服务器上运行的用户显示自定义
(
友好
)
信息
.
<httpRuntime>
节
配置
ASP.NET HTTP
运行库设置
.
如
:
控制用户上传文件最大为
4MB,
最长时间为
60S ,
最多请求数为
100
的配置信息代码如下
:
<httpRuntime maxRequestLenth = “4096” executionTimeout =”60” appRequestQueueLimit =”100” />
<pages>
节
标示特定于
页
的配置设置
(
是否启用会话状态
,
视图状态
,
是否检测用户输入等
.)
如
:
在从客户端向服务器端发送请求时检测加密的视图状态
,
以验证视图状态是否已在客户端被
篡改
的配置信息如下
:
<pages buffer =”true” enable ViewStateMac =”true”></pages>
<SessionState>
节
为当前应用程序配置会话状态设置
(
如
:
是否启用会话状态
,
会话状态保存位置等
)
如
:
在本地存储会话状态
,
并设置会话超时时间为
20
分钟
,
如下
<sessionState mode =”InProc” Cookieless =”true” timeout =”20”></sessionState>
<trace>
节
配置
ASP.NET
跟踪服务
,
主要用来判断测试哪里出错了
<trace enable =”false” requestLimit =”10” pageOutput =”false” traceMode =”SortByTime” localOnly =”true”>
</trace>
其中
: enable =”false”
表示不启用跟踪
; requestLimit =”10”
表示指定在服务器上存储的跟踪请求的数目
; pageOutput =”false”
表示只能通过跟踪实用工具访问跟踪输出
; traceMode =”SortByTime”
表示以处理跟踪的顺序来显示跟踪信息
; localOnly =”true”
表示跟踪查看器
(trace.axd)
只用于
web
服务器