开发者

System.webServer and System.web sections of web.config

What is point to have two separate sections for d开发者_开发百科efining error documents in web.config?

<system.webServer>
...
   <httpErrors errorMode="Custom">
      <remove statusCode="404" subStatusCode="-1" />
      <error statusCode="404" prefixLanguageFilePath="" path="/ErrorPage_404.aspx" responseMode="ExecuteURL" />
   </httpErrors>
...
</system.webServer>

and

<system.web>
...
   <customErrors defaultRedirect="/Forms/Errors/Error.aspx" mode="On">
      <error statusCode="404" redirect="/ErrorPage_404.aspx" />
   </customErrors>
...
</system.web>

If I remove first section, IIS7 will not show error pages. If I remove second one, my VS debugger will not show error pages.


I always thought that system.web applied to IIS6 and below, while system.webServer applied to IIS7+, but actually it seems that the real answer is that system.web is for .aspx / .asp pages through its handler mapping, and everything else goes through system.webServer.

Have a look at this webpage for a pretty clear explanation.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜