如果来自我网站的请求包含一些错误(数据库链接错误),那么asp.net主机服务器错误页面正在显示,但我想避免错误页面,而是我要显示我自己的自定义设计错误页面。
答案 0 :(得分:2)
将customErrors
元素添加到适当位置的web.config
文件中,如下所示:
<configuration>
...
<system.web>
<customErrors mode="On" defaultRedirect="~/ErrorPages/Oops.aspx" />
...
</system.web>
</configuration>
将mode
属性设置为On
可确保向所有人显示错误页面。如果要仅向远程用户显示错误页面,可以将属性设置为RemoteOnly
;然后,本地用户将看到包含异常详细信息的错误页面,这可以简化开发。
如果您想了解有关此主题的更多信息,我建议您查看官方ASP.NET网站上的以下文章:Displaying a Custom Error Page
答案 1 :(得分:1)
通过在web.config文件中粘贴它来设置您自己的默认错误页面
customErrors Element (ASP.NET Settings Schema)
<configuration>
<system.web>
<customErrors mode="On" defaultRedirect="GetLastError.aspx" />
</system.web>
</configuration>
答案 2 :(得分:1)
要实现此目的,您可以使用pranay提到的customErrors配置设置。 (但您希望模式为On或RemoteOnly。使用来自localhost的RemoteOnly,您仍将看到详细的错误消息,而其他客户端将看到您的处理程序页面)
另外,作为旁注,您可以覆盖页面的OnError方法,该方法在发生未处理的异常时调用。要检查在该方法中触发错误的异常,可以调用Context.Server.GetLastError()方法并继续操作。 (记录异常,重定向到页面等..) 一个更通用的解决方案是创建一个HttpModule来处理HttpApplication的Error事件,但这不是你要问的。