MVC application_startlocalhost重定向你太多次
本文关键字:太多 重定向 startlocalhost application MVC | 更新日期: 2023-09-27 18:03:35
我得到错误:
localhost重定向您太多次。
当我从Application_Start
方法重定向到错误页面时
我的代码是这样的:
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RouteConfig.RegisterRoutes(RouteTable.Routes);
}
protected void Application_Error(Object sender, EventArgs e)
{
var exception = Server.GetLastError();
if (exception != null)
{
Session["w"] = exception;
Response.Clear();
Server.ClearError();
Response.Redirect("~/Admin/Error");
}
}
}
在这种情况下使用Session不是一个好主意。如果错误是由没有标记IRequiresSessionState
的IHttpHandler
触发的,那么访问会话将失败。因此,你将有一个重定向循环。
删除会话并尝试使用:
Response.Redirect(String.Format("~/Admin/Error?w={0}", exception.Message));
这个问题更可能与您上面提到的缺少favicon.ico
文件引起的File Not Found
错误有关。
favicon.ico
文件。
可选地,您可以更新错误处理以避免在检测到404时重定向。
protected void Application_Error(Object sender, EventArgs e)
{
var exception = Server.GetLastError();
if (exception != null && exception != 404)
{
Session["w"] = exception;
Response.Clear();
Server.ClearError();
Response.Redirect("~/Admin/Error");
}
}