我工作的这一点我们已经在ASP.NET Web窗体建成,现在是建立与ASP.NET MVC网站。
我们作出了新的MVC版本上周直播。
但旧的登录URL是www.website.com/login.aspx已经书签被很多用户,他们仍然使用,因此他们得到404错误。
所以我想这将是用户从旧的URL到新的MVC网址被重定向www.website.com/account/login最简单,最好的方法
这样的登录URL,我期待的用户可能已经收藏其他几个网址也,所以这将是处理这个最好的方法是什么?
我工作的这一点我们已经在ASP.NET Web窗体建成,现在是建立与ASP.NET MVC网站。
我们作出了新的MVC版本上周直播。
但旧的登录URL是www.website.com/login.aspx已经书签被很多用户,他们仍然使用,因此他们得到404错误。
所以我想这将是用户从旧的URL到新的MVC网址被重定向www.website.com/account/login最简单,最好的方法
这样的登录URL,我期待的用户可能已经收藏其他几个网址也,所以这将是处理这个最好的方法是什么?
您可以使用URL Rewrite module
在IIS。 这就像把你的下面的规则简单<system.webServer>
部分:
<system.webServer>
<rewrite>
<rules>
<rule name="Login page redirect" stopProcessing="true">
<match url="login.aspx" />
<action type="Redirect" redirectType="Permanent" url="account/login" />
</rule>
</rules>
</rewrite>
...
</system.webServer>
该模块是非常强大的,让你任何种类的重写和重定向。 下面是其他一些sample rules
。
在Global.asax
void Application_BeginRequest(Object source, EventArgs e)
{
//HttpApplication app = (HttpApplication)source;
//HttpContext context = app.Context;
string reqURL = HttpContext.Current.Request.Url;
if(String.compare(reqURL, "www.website.com/login.aspx")==0)
{
Response.Redirect("www.website.com/account/login");
}
}