每次我必须为ASP添加一个处理程序或模块。NET和IIS7,说明总是告诉我把它合并成两个部分:系统。Web和system.webserver。

<system.web>
    <httpHandlers>
    </httpHandlers>
    <httpModules>
    </httpModules>
</system.web>

这:

<system.webServer>
    <modules>
    </modules>
    <handlers>
    </handlers>
</system.webServer>

这两部分有什么不同?

另外,如果我不把它加入系统。web部分,我的Visual Studio 2008调试器也不能正常工作。


当前回答

这个系统。web部分用于配置iis6.0,而系统。配置IIS 7.0时使用的是webserver版本。IIS 7.0包含了一个新的ASP。NET管道和一些配置差异,因此有额外的配置部分。

然而……

如果仅以集成模式运行IIS 7.0,则不需要将处理程序添加到这两个部分。将其添加到系统。如果我没看错的话,web as也是IIS 7.0在经典模式下运行的一个后备方案。我还没有做过大量的测试。

更多信息请参见http://msdn.microsoft.com/en-us/library/bb763179.aspx。

其他回答

前者适用于经典模式。

后者用于集成管道模式(在IIS7+中可用)。

这个系统。web部分用于配置iis6.0,而系统。配置IIS 7.0时使用的是webserver版本。IIS 7.0包含了一个新的ASP。NET管道和一些配置差异,因此有额外的配置部分。

然而……

如果仅以集成模式运行IIS 7.0,则不需要将处理程序添加到这两个部分。将其添加到系统。如果我没看错的话,web as也是IIS 7.0在经典模式下运行的一个后备方案。我还没有做过大量的测试。

更多信息请参见http://msdn.microsoft.com/en-us/library/bb763179.aspx。