在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>
和
<system.web>
...
<customErrors defaultRedirect="/Forms/Errors/Error.aspx" mode="On">
<error statusCode="404" redirect="/ErrorPage_404.aspx" />
</customErrors>
...
</system.web>
如果删除第一部分,则IIS7将不会显示错误页面。如果删除第二个,我的VS调试器将不会显示错误页面。
最佳答案
我一直以为system.web适用于IIS6及更低版本,而system.webServer适用于IIS7 +,但实际上似乎真正的答案是system.web通过其处理程序映射以及.aspx/.asp页用于通过system.webServer。
Have a look at this webpage for a pretty clear explanation。
关于iis - web.config的System.webServer和System.web部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7089442/