(一).Web.Config是以XML文件规范存储,配置文件分为以下格式

1.配置节处理程序声明
    特点: 位于配置文件的顶部,包含在<configSections>标志中。

2.特定应用程序配置
    特点: 位于<appSetting>中。 可以定义应用程序的全局常量设置等信息.

3.配置节设置
    特点: 位于<system.Web>节中,控制Asp.net运行时的行为.

4.配置节组
    特点: 用<sectionGroup>标记,可以自定义分组,可以放到<configSections>内部或其它<sectionGroup>标记的内部.

(二).配置节的每一节
    1.<configuration>节
    根元素,其它节都是在它的内部.
   
     2.<appSetting>节
    此节用于定义应用程序设置项。对一些不确定设置,还可以让用户根据自己实际情况自己设置
    用法:

I. 定义了一个连接字符串常量,并且在实际应用时可以修改连接字符串,不用修改程式代码.

<appSettings><add key="Conntction" value="server=192.168.85.66;userid=sa;password=;database=Info;"/>
<appSettings>

II.定义了一个错误重定向页面.

<appSettings><add key="ErrPage" value="Error.aspx"/>
<appSettings>

3.<compilation>节
    格式:

<compilation defaultLanguage="c#" debug="true" />

I.
        default language: 定义后台代码语言,可以选择C#和VB.net两种语言.
 II.
        debug : 为true时,启动aspx调试; 为false不启动aspx调试,因而可以提高应用程序运行时的性能。 一般程序员在开发时设置为true,交给客户时设置为false.

4.<customErrors>节
    格式:

<customErrors mode="RemoteOnly" defaultRedirect="error.aspx"><error statusCode="440" redirect="err440page.aspx"/><error statusCode="500" redirect="err500Page.aspx"/>
<customErrors/>

I.
        mode : 具有On,Off,RemoteOnly 3种状态。On表示始终显示自定义的信息; Off表示始终显示详细的asp.net错误信息; RemoteOnly表示只对不在本地Web服务器上运行的用户显示自定义信息.
    II.
        defaultRedirect: 用于出现错误时重定向的URL地址. 是可选的
    III.
        statusCode: 指明错误状态码,表明一种特定的出错状态.
    IV.
        redirect:错误重定向的URL.

5.<globalization>节
    格式:

 <globalization requestEncoding="utf-8" responseEncoding="utf-8" fileEncoding="utf-8" />

I.
        requestEncoding: 它用来检查每一个发来请求的编码.
    II.
        responseEncoding: 用于检查发回的响应内容编码.
    III.
        fileEncoding: 用于检查aspx,asax等文件解析的默认编码.

6.<sessionState>节
    格式:

<sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="20" />

I.
        mode: 分为off,Inproc,StateServer,SqlServer几种状态
    II.
        stateConnectionString :指定Asp.net应用程序存储远程会话状态的服务器名,默认为本机
    III.
        sqlConnectionString: 当用会话状态数据库时,在这里设置连接字符串
    IV.
        Cookieless: 设置为true时,表示不使用cookie会话状态来标识客户; 否则,相反.
    V.
        TimeOut: 用来定义会话状态存储的时间,超过期限,将自动终止会话.

7.<authentication>节
    格式:

<authentication mode="Forms"><forms name=".ASPXUSERDEMO" loginUrl="Login.aspx" protection="All" timeout="30"/>
</authentication>
<authorization><deny users="?"/>
</authorization>

I.
        Windows: 使用IIS验证方式
    II.
        Forms: 使用基于窗体的验证方式
    III.
     Passport: 采用Passport cookie验证模式
    IV.
        None: 不采用任何验证方式

里面内嵌Forms节点的属性涵义:
    I.
        Name: 指定完成身份验证的Http cookie的名称.
    II.
        LoginUrl: 如果未通过验证或超时后重定向的页面URL,一般为登录页面,让用户重新登录
    III.
        Protection: 指定 cookie数据的保护方式.

可设置为: All None Encryption Validation四种保护方式
            a. All表示加密数据,并进行有效性验证两种方式
            b. None表示不保护Cookie.
            c. Encryption表示对Cookie内容进行加密
            d. validation表示对Cookie内容进行有效性验证
    IV.
        TimeOut: 指定Cookie的失效时间. 超时后要重新登录.

从文件名就可以看出是做配置用的,比如配置自定义错误页面,debug,等等
    存放连接字符串是最基本的用法,
    高级一点可以配置httpmodule,httphandler...
    再高级一点可以写一个继承自IConfigurationSectionHandler,添加自定义的配置节...
    功能是很强大的
    ASP.NET提供了一个丰富而可行的配置系统,以帮助管理人员轻松快速的建立自己的WEB应用环境。    ASP.NET提供的是一个层次配置架构,可以帮助WEB应用、站点、机器分别配置自己的扩展配置数据。    ASP.NET的配置系统具有以下优点:
    ●ASP.NET允许配置内容可以和静态内容、动态页面和商业对象放置在同一应用的目录结构下。当管理人员需要安装新的ASP.NET应用时,只需要将应用目录拷贝到新的机器上即可。
    ●ASP.NET的配置内容以纯文本方式保存,可以以任意标准的文本编辑器、XML解析器和脚本语言解释、修改配置内容。
    ●ASP.NET 提供了扩展配置内容的架构,以支持第三方开发者配置自己的内容。
    ●ASP.NET配置文件的更修被系统自动监控,无须管理人员手工干预。

4.2.2配置文件的规则
    ASP.NET的配置文件是基于XML格式的纯文本文件,存在于应用的各个目录下,统一命名为“config.web”。它决定了所在目录及其子目录的配置信息,并且子目录下的配置信息覆盖其父目录的配置。

WINNT/Microsoft.NET/Framework/版本号/下的config.web为整个机器的根配置文件,它定义了整个环境下的缺省配置。

缺省情况下,浏览器是不能够直接访问目录下的config.web文件。

在运行状态下,ASP.NET会根据远程URL请求,把访问路径下的各个config.web配置文件叠加,产生一个唯一的配置集合。举例来说,一个对URL: http://localhost/webapp/owndir/test.aspx的访问,ASP.NET会根据以下顺序来决定最终的配置情况:
    1../Microsoft.NET/Framework/v.1.00/config.web (缺省配置文件)
    2../webapp/config.web (应用的配置)
    3../webapp/owndir/config.web (自己的配置)

4.2.3配置文件的语法规则

(1)标识
    配置内容被置于config.web文件中的标记<configuration>和</configuration>之间。
    格式:
        <configuration>
            配置内容…
        </configuration>

(2)配置段句柄说明
    ASP.NET的配置文件架构并未指定任何文件格式或者是支持的配置属性。相反的,它提出了“配置段句柄申明”的概念来支持任意的用户定义配置段。
    格式:
        <configsections>
          <add name=欲定义配置段名 type=处理的句柄函数 />
        </configsections>

(3)配置段
    具体定义配置的内容,供应用使用。

以下例子定义了一个“httpmodules”配置段,设置了系统http相关的处理模块

<configuration><configsections><add name="httpmodules" type="System.Web.Configuration.HttpModules ConfigurationHandler" /></configsections><httpmodules><add type="System.Web.SessionState.CookielessSessionModule" /><add type="System.Web.Caching.OutputCacheModule" /><add type="System.Web.SessionState.SessionStateModule" /><add type="System.Web.Security.WindowsAuthenticationModule" /><add type="System.Web.Security.CookieAuthenticationModule" /><add type="System.Web.Security.PassportAuthenticationModule" /><add type="System.Web.Security.CustomAuthenticationModule" /><add type="System.Web.Security.UrlAuthorizationModule" /><add type="System.Web.Security.FileAuthorizationModule" /></httpmodules>
</configuration>

4.2. 4   ASP.NET定义的标准配置段

(1)httpmodule    段: 定义了应用的http请求的处理模块以及诸如安全、日志之类的应用方式
(2)httphandlers 段: 负责映射URLs到IhttpHandler类
(3)sessionstat    段: 负责配置http模块的会话状态
(4)globalization   段: 配置应用的公用设置
(5)compilation    段: 配置ASP.NET的编译环境
(6)trace      段: 配置ASP.NET的跟踪服务
(7)security         段: ASP.NET的安全配置
(8)iisprocessmodel 段: 在IIS上配置ASP.NET的处理模式
(9)browercaps   段: 配置浏览器的兼容部件

4.2. 5    一个配置读出的例子

(1)config.web配置文件

<!--config.web 请放入FormCfg.aspx所在目录-->
<configuration><!--申明一个test配置段--><configsections><add name="test" type="System.Web.Configuration.DictionarySectionHandler" /></configsections><test><!--配置一个键key,其内容为just a configure test--><add key="key" value="just a configure test" /></test>
</configuration>

(2)读出其内容

<!--文件名:Application/FormCfg.aspx-->
<html><head><script language="VB" runat=server>sub page_load(s as object ,e as eventargs)'取出test配置段的key键的值Dim CfgSection As Hashtable = Context.GetConfig("test")Dim Msg As String = CStr(CfgSection("key"))lblMsg.text=Msgend sub</script><title>配置信息的读取</title></head><body><center>config.web中"test"配置段中key的内容为: <asp:label id=lblmsg runat=server /></center></body>
</html>

(3)运行结果

4.2. 6    Config.web配置实例

 <configuration><!--定义用户应用的公用设置,如SQL的sql连接串等等--><appsettings></appsettings><!--设置浏览器的兼容性部件--><browsercaps></browsercaps><!--编译环境设置,非调试模式--><compilation debugmode="false"><!--缺省编译语言为vb,以后可以不再在Page中定义脚本语言--><compilers defaultlanguage="vb"><!--以MSVSA.dll编译.vb为后缀的VB文件--><compiler language="VB" extension=".vb" type="MSVSA.dll#Microsoft.VB.Compiler"/></compilers><assemblies><!--加入对System.Data的引用--><add assembly="System.Data" /><!--去掉对System.Data的引用--><remove assembly="System.IO" /><!--去掉config.web中包含或继承来的引用--><clear /></assemblies></compilation><!--设置应用全局环境--><!--文件、请求、返回以gb2312编码,以保证浏览器正确显示中文--><globalization fileencoding="gb2312" requestencoding="gb2312" responseencoding="gb2312"/><!--定义用户出错的处理--><!--出错缺省显示defaultredirect指定的页面,mode为on时,遵循customerrors配置段--><!--mode为off时,忽略用户出错,mode为remoteonly时,本地才显示真正的出错原因--><customerrors defaultredirect="AnErrorHasOccured.aspx?ErrNum=-1" mode="remote"><!--当出错码为500时,显示redirect指定的页面--><error statuscode="500" redirect="AnErrorHasOccured.aspx?ErrNum=500"/></customerrors><!--指定目录webapp的访问权限--><location path="webapp” ><!--非授权用户不能进入webapp目录--><security><authorization><deny users="?" /></authorization></security></location><!--定义安全属性--><security><authorization><!--角色为Adminstrators和所有的用户访问其指定的资源--><allow roles="Adminstrators"/><allow users="*" /></authorization></security></configuration>

IIS web.config配置详细说明相关推荐

  1. Web.Config配置详细说明

    (一).Web.Config是以XML文件规范存储,配置文件分为以下格式 1.配置节处理程序声明     特点:位于配置文件的顶部,包含在<configSections>标志中. 2.特定 ...

  2. iis web.config 配置 经典模式_django部署在iis下,webconfig错误

    django部署在iis下,webconfig错误 错误原因: iis7以后, web.config管理机制更安全了 默认情况下,会锁住配置项, 不许修改 怎么办? 如何求解以上问题呢? D:djan ...

  3. iis web.config 配置 经典模式_部署IIS+PHP+Oracle环境

    因为平时对SQL注入的运用都仅限于工具,对于手工注入的话并没有太多的了解,所以才有了这些环境的搭建,也是为了方便后续的实验. 目录 0x01 Oracle的安装 0x02 配置IIS和PHP 0x03 ...

  4. Asp.net中的web.config配置

    Asp.net中的web.config配置 Asp.net中的web.config配置... 1 一. 配置文件保存位置... 2 二. 配置文件加载顺序... 2 三. 配置文件节点介绍... 3 ...

  5. vue-cli中的webpack的config配置详细说明

    vue-cli中的webpack的config配置详细说明 打开我们的vue项目文件夹我们可以清楚的看到文件夹下的三个文件, "dev.env.js","index.js ...

  6. [asp.netMVC]通过configSource提高web.config配置灵活性

    转载连接:http://www.cnblogs.com/Gyoung/p/3590778.html 通过configSource提高web.config配置灵活性 很多时候我们会有这样的情况,开发环境 ...

  7. web.config配置文件格式详细解读

    (一).Web.Config是以XML文件规范存储,配置文件分为以下格式     1.配置节处理程序声明 特点: 位于配置文件的顶部,包含在标志中.     2.特定应用程序配置 特点:  位于中. ...

  8. Web.config配置详解

    一.认识Web.config文件 Web.config   文件是一个XML文本文件,它用来储存   ASP.NET   Web   应用程序的配置信息(如最常用的设置ASP.NET   Web   ...

  9. win7 IIS Web.config节点锁定问题

    新装了系统后system.webServer/modules一设置就500,还偏偏装不上asp.net,没有StateServer服务,还必须这个节点设置,折腾死我了.后面找到了原因是父级别把这个节点 ...

最新文章

  1. ORA-01113 file 1 needs media recovery
  2. CentOS6.5下做DNS服务器
  3. java do while变量无法赋值_Java流是否等同于具有变量赋值的while
  4. STM32 HAL库 串口DMA(收发)和STM32串口中断接收(接收时间管理机制)+ESP8266 wifi模组通信问题
  5. linux下camera驱动分析_《Linux设备驱动程序》(五)——字符设备驱动(下)
  6. 如何查看自己的电脑是否支持EFI引导?我的是dell 15r-488 N5010 谢谢了!
  7. hashmap为什么用红黑树_要看HashMap源码,先来看看它的设计思想
  8. 三星为什么要卖芯片?手机干不过华为小米,半导体好挣钱!
  9. linux扩容根目录空间_Linux系统扩容根目录磁盘空间的操作方法
  10. 判斷作業系統為 64bit 或 32bit z
  11. poj 1743 Musical Theme【后缀自动机】
  12. Python新闻网站项目-3.Gerapy爬虫分布式部署
  13. 信捷PLC应用-三轴钻孔机
  14. 可用的码支付系统源码
  15. filepath直接指定到文件名吗_按照txt中指定的文件名,从src_path中拷贝文件到dest_path(copyfile_from_txt)...
  16. 「缠师课后回复精选」第9课 甄别“早泄”男的数学原则!
  17. 手把手教你禁止访问某个网站
  18. [COGS2287][HZOI 2015]疯狂的机器人(NTT)
  19. 利用雅可比方法求线性方程组C语言_工程项目经济评价的基本方法
  20. Codeforces Round #829 cf1753A Cowardly Rooks

热门文章

  1. iebook超级精灵免费版的使用方法
  2. 在ros下使用omni
  3. idea中的java文件是红色的原因及处理办法
  4. win7没intel信息服务器,win7功能没有ftp服务器
  5. 文献管理软件Mendeley的优缺点以及下载安装
  6. Spring整合MyBatis原理之Mapper接口和xml文件的解析
  7. python算法实现反欺诈案例完整建模流程!电信诈骗这么多?
  8. 机器人战争显示服务器连接,飞机机器人战争城市救援
  9. 云游昆大丽(一)——舟车劳顿
  10. CSDN日报190813:一个野生程序员的自我修养