Web.config中httpModules和httpHandlers的相关配置说明

2018-12-24 09:12:58 浏览数 (1)

配置Modules和Handlers的时候,根据不同IIS的版本和应用程序池中不同的托管管道模式,在Web.config中也有不同的配置方式。

1.托管管道模式为:集成

为集成模式,配置在Web.config的configuration节点下的<system.webServer>节点下,如下所示

代码语言:javascript复制
<?xml version="1.0"?>
<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.0"/>
  </system.web>
  <system.webServer>
    <handlers>
      <add verb="*" name="d" path="*.asyn" type="Class1"/>
    </handlers>
    <modules>
      <add name="FullEvents" type="FullEvents"/>
    </modules>
  </system.webServer>
</configuration>

2.IIS版本,IIS 6.0 及更早版本

这种情况只能在<system.web>下注册节点,如下所示

代码语言:javascript复制
<?xml version="1.0"?>
<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.0"/>
    <httpModules>
      <add name="FullEvents" type="FullEvents"/>
    </httpModules>
    <httpHandlers>
      <add verb="*" path="*.asyn" type="Class1" />
    </httpHandlers>
  </system.web>
</configuration>

说明:我测试的IIS7.5工具,在经典模式下,只能使用第二种配置方法。

注:如果是在经典模式下,访问静态文件,如Html等,将不会进入Modules,在集成下才可进入Modules。其实经典模式我认为,就是把iis的运行环境还原到IIS6.0版本下,在IIS6.0以及之前的工具运行,静态文件都不会执行处理程序的,执行处理程序是在IIS7上才新增的,在MSDN上也有文章明确说明了。

iis

0 人点赞