2013-08-31 47 views
0

我必须在我的MVC global.asax文件中编写重定向以容纳IIS 6服务器。但是,当我到达带有扩展名(.html)的旧网址时,服务器不会重定向。以下是我的重定向代码示例:当传入的Url有扩展名时IIS 6重定向

if (url.Contains("contact.html")) 
     { 
      Response.Clear(); 
      Response.Status = "301 Moved Permanently"; 
      Response.StatusCode = (int)HttpStatusCode.MovedPermanently; 
      Response.AddHeader("Location", "http://www.mysite.com/contact"); 
      Response.End(); 
     } 

为什么不能正常工作?

+0

您是否更改/删除IIS中的.html处理程序以允许ASP.NET拦截该请求? –

+0

我明白你在做什么,但好像你正在使用螺丝刀而不是电钻。为什么不创建一个重定向到'home'控制器中一个名为'contact'的动作方法的路由? –

+0

这是来自旧版本网站的过期网址。我已经有了定期联系页面的路线。我试图在URL包含.html时重定向。我有道理吗? – jallen

回答

0

答案是因为需要将相关的http处理程序添加到IIS 6.谢谢,史蒂文!