-1
我有asp.net webform网站,我已经迁移到asp.net mvc。.Aspx页面请求控制器操作
现在我想做301永久重定向我的旧.aspx页面请求到asp.net mvc控制器操作。
有人可以详细解释如何将.aspx页面请求重定向到asp.net mvc控制器/操作。
谢谢。
我有asp.net webform网站,我已经迁移到asp.net mvc。.Aspx页面请求控制器操作
现在我想做301永久重定向我的旧.aspx页面请求到asp.net mvc控制器操作。
有人可以详细解释如何将.aspx页面请求重定向到asp.net mvc控制器/操作。
谢谢。
最简单的办法就是打电话:
Response.RedirectPermanent(newUrl);
这将提供301到浏览器。
编辑: 所以看起来你已经删除了ASPX页面,所以物理页面不再存在,导致404页面。你仍然可以通过将代码处理到Global中来解决这个问题。 asax,类似于:
protected void Application_BeginRequest(object sender, EventArgs e)
{
if (Request.Url.AbsolutePath == "/SomePage.aspx")
{
Response.RedirectPermanent("~/SomePage");
}
}
这是ASP.NET 4.0+。如果你在一个较老的框架中,有一些方法可以实现它 - 我认为这是一个有效的方法 - Response.Status =“301永久移动”; Response.AddHeader(“Location”,“http://newsite.com/Whatever”);' –
每当你用.aspx输入任何东西时,它会产生404没有找到的异常,所以基本上我最终可以在全局的Application_Error事件中编写代码.ascx现在我有整个网站的网址,它对Global.ascx来说太多了 –