Fra*_*rio 4 asp.net error-handling web-config
在我运行的网站上,我将404和500错误映射为重定向到最终用户的自定义错误页面; 在我的web.config中使用以下代码:
...
...
<system.web>
<customErrors defaultRedirect="/404/default.aspx" mode="RemoteOnly">
<error statusCode="404" redirect="/404/default.aspx" />
</customErrors>
...
...
Run Code Online (Sandbox Code Playgroud)
但是,我有一个我不想重定向的特定页面; 运行状况检查页面以确保站点100%正常运行.我尝试使用web.config中的以下代码设置特定于位置的自定义错误处理程序:
...
...
</system.web>
<location path="health.aspx">
<system.web>
<customErrors defaultRedirect="" mode="RemoteOnly"></customErrors>
</system.web>
</location>
...
...
Run Code Online (Sandbox Code Playgroud)
但是,它似乎不起作用.当我将health.aspx重命名为badhealth.aspx等其他内容时,请发出请求,我希望通过黄屏死机页面获得通用的404错误.同样,通过故意更改代码以引发错误,我应该通过YSOD页面获得500错误.在这两种情况下,我最终被重定向到我们的自定义404页面,然后获得YSOD.思考?
非常感谢任何帮助.
谢谢大家, - 弗兰克
没关系,我们解决了这个问题.看来当你有一个特定于位置的customError指令时; 如果将defaultRedirect保留为"",则默认为站点范围的defaultRedirect URL.
解决方案只是关闭此特定路径的CustomError处理,如下所示:
<system.web>
<customErrors defaultRedirect="/404/default.aspx" mode="RemoteOnly">
<error statusCode="404" redirect="/404/default.aspx" />
</customErrors>
</system.web>
<location path="health.aspx">
<system.web>
<customErrors mode="Off"/>
</system.web>
</location>
Run Code Online (Sandbox Code Playgroud)
不管怎样,谢谢,何塞.
| 归档时间: |
|
| 查看次数: |
3103 次 |
| 最近记录: |