asp.net自定义错误
本文关键字:错误 自定义 net asp | 更新日期: 2023-09-27 18:21:15
我对此很困惑。我试着遵循各种教程,但似乎都做不好我不知道我做错了什么,因为它和我看过的那些视频完全一样。
我试过这个
web.config
<customErrors mode="On" defaultRedirect="Error.aspx"/>
更改Global.aspx下的application_error
它最终以响应重定向结束,也尝试了服务器传输,但没有一个能引导我进入Error.aspx
有人知道如何设置一个好的简单教程吗?或者有人可以一步一步地告诉我该怎么做?
我试着遵循本指南的第一部分,因为这正是我想要的。
protected void Application_Error(object sender, EventArgs e)
{
Exception ex = Server.GetLastError();
Server.ClearError();
Response.Redirect(@"~Error.aspx");
}
但它告诉我它进入了一个无限循环。
我想把用户发送到一个名为Error.aspx的页面,在那里他们可以看到一个自定义的错误屏幕。
IIS问题将是下一个问题xD呵呵但我找到了我的循环和问题的来源
我在Error.aspx中有这段代码,这让它崩溃了,也就是循环xD
<asp:ContentPlaceHolder ID="head" runat="server" >
</asp:ContentPlaceHolder>
<configuration>
<system.webServer>
<httpErrors errorMode="DetailedLocalOnly" defaultResponseMode="File" >
<remove statusCode="500" />
<error statusCode="500"
prefixLanguageFilePath="C:'Contoso'Content'errors"
path="500.htm" />
</httpErrors>
</system.webServer>
</configuration>
否则,请在IIS级别上执行以下步骤
如何添加自定义错误页面
http://www.iis.net/configreference/system.webserver/httperrors
- 打开IIS
- 从"网站"左侧选择您的网站
- 双击.Net错误页面
- 从右侧的"操作"窗格中选择"编辑要素设置"
- 选择"打开"并给出要显示的页面名称当出现任何错误时
我遵循了以下步骤,没有在Global.asax中添加任何内容,它对我来说很好。只需尝试并从global.asax.中删除代码
<configuration>
...
<system.web>
<customErrors mode="RemoteOnly"
defaultRedirect="~/ErrorPages/Oops.aspx" />
...
</system.web>
注意路径分辨率的前导~