IIS 6.0忽略我的自定义错误设置

时间:2014-03-22 00:19:06

标签: asp.net iis iis-6 custom-error-pages

帮助我已将以下配置添加到web.config文件中:

    <customErrors mode="On" defaultRedirect="~/errors/CustomError.aspx">
        <error statusCode="403" redirect="~/Errors/PageNotFound.aspx" />        
        <error statusCode="404" redirect="~/Errors/PageNotFound.aspx"/>
    </customErrors>

并在system.webServer

    <httpErrors errorMode="Custom" existingResponse="PassThrough">
    <remove statusCode="403" subStatusCode="-1" />
    <error statusCode="403" prefixLanguageFilePath="" path="/errors/CustomError.aspx" responseMode="Redirect" />
    <remove statusCode="404" subStatusCode="-1" />
    <error statusCode="404" prefixLanguageFilePath="" path="/errors/CustomError.aspx" responseMode="Redirect" />
    </httpErrors>   

出于安全原因,我不希望我的网络服务器宣布403/404。

进行上述更改后,我在尝试浏览目录时仍然收到403禁止消息。

唯一有效的方法是从IIS配置它:

enter image description here

如何告诉IIS去查看web.config设置而不是IIS?似乎错误是在管道中过早抛出 - 它完全忽略了web.config和asp.net管道的其余部分。

此外,错误绝对不会进入Glogal.Asax.cs Application_Error函数。有没有办法确保错误总是通过asp.net路由?

0 个答案:

没有答案