我一直在尝试重定向错误消息401.2。:未经授权:由于服务器配置导致登录失败,如下所示:
<customErrors defaultRedirect="Error.aspx" mode="On">
<error statusCode="401" redirect="Unauthorized.aspx" />
</customErrors>
但它实际上从未实际重定向。它仍然显示默认的Access is denied页面。 我在那里做错了什么?
答案 0 :(得分:4)
将以下内容添加到global.asax似乎工作正常:
void Application_EndRequest(object sender, EventArgs e)
{
if (Response.StatusCode == 401)
Response.Redirect("Unauthorized.aspx");
}
答案 1 :(得分:0)
首先尝试一下:
在Unauthorized.aspx.cs上设置Page_Load方法:
private void Page_Load(System.Object sender, System.EventArgs e)
{
//Put user code to initialize the page here
Response.StatusCode = 401;
Response.TrySkipIisCustomErrors = true;
}
详情请见:
HttpResponse.TrySkipIisCustomErrors Property
IIS 7 Error Pages taking over 500 Errors
第二次尝试: 除了标记之外,还可以使用它来绕过IIS错误页面:
<system.webServer>
<httpErrors existingResponse="PassThrough" />
</system.webServer>