简而言之,它仅适用于经典模式。
在经典管道模式下,ASP.NET 作为 ISAPI 扩展插入 IIS 请求处理管道 - 与在 IIS 6 中的方式完全相同。事实上,如果您打开 %WINDIR%\system32\inetsrv\config\applicationHost。配置文件并找到其中的部分,您可以看到如何配置 IIS 以将 ASP.NET 特定请求映射到 aspnet_isapi.dll:
<handlers accessPolicy="Read, Script">
...
<add name="PageHandlerFactory-ISAPI-2.0"
path="*.aspx" verb="GET,HEAD,POST,DEBUG"
modules="IsapiModule"
scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll"
preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
...
</handlers>
注意处理程序映射的 preCondition 属性。除其他外,此属性设置为 classicMode,这确保此处理程序映射仅在应用程序池配置为以经典模式运行时生效。