获取未处理的异常时,添加web.config键以始终重定向

时间:2010-10-15 20:26:02

标签: c# asp.net web-applications web-config

我曾经看到,只要在web.config文件中添加一个键,就可以在每次发现未处理的异常时重定向到默认的错误页面。

有可能吗?如何?

3 个答案:

答案 0 :(得分:6)

是web.config的customErrors部分。

<customErrors defaultRedirect="~/GenericError.aspx" mode="On" />

这会在用户遇到错误时将其重定向到defaultRedirect(URL)。

您还可以根据HTTP响应代码

指定它们的去向
<customErrors defaultRedirect="~/GenericError.aspx" mode="On">
    <error statusCode="500" redirect="~/Error.aspx"/>
    <error statusCode="404" redirect="~/NotFound.aspx"/>
</customErrors>

这是documentation

答案 1 :(得分:5)

在您的web.config中添加CustomErrors部分。

<customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly" />

答案 2 :(得分:0)

<customErrors defaultRedirect="~/serverErrorPage.aspx" mode="On" redirectMode="ResponseRewrite"/>

它不适合.NET3.5 Service Pack 1之前的实际使用,因为在那之前redirectMode属性不在那里,它总是以默认值"ResponseRedirect"行动,它会重定向到错误页面而不是直接显示;所以不是给出错误响应,而是“成功”重定向到另一个页面,然后 将返回错误!