从global.asax重定向不在mvc中工作

时间:2011-09-17 21:29:03

标签: asp.net-mvc asp.net-mvc-routing

我似乎无法从我的asp.net mvc网站中的Application_BeginRequest重定向。我不确定为什么这不起作用......我怀疑是路由,但不确定为什么。

 /// <summary>
    /// Application_BeginRequest
    /// </summary>
    protected void Application_BeginRequest(object sender, EventArgs e)
    {           
         Response.Redirect("siteoffline.html");                     
    }

当我尝试

时,Firefox会显示此消息
The page isn't redirecting properly

Firefox has detected that the server is redirecting the
request for this address in a way that will never complete.

1 个答案:

答案 0 :(得分:4)

您正在为{strong>每个请求调用的Application_BeginRequest内重定向。因此,当您的应用程序运行时Application_BeginRequest被触发并重定向到siteoffline.html,当此页面投放时,Application_BeginRequest会被触发,您重定向到siteoffline.html并且您明白了无限循环。幸运的是,FireFox在发现你滥用过多的重定向后会停止这种疯狂。

结论:永远不要重定向到Application_BeginRequest事件中属于您网站的网页,这就像是在拍摄自己的脚。

顺便说一下,为了让您的网站处于维护模式,您可能希望使用Gu的博客app_offline.htm file而不是重新发明轮子。