如何设置MVC路线来处理旧的ASP经典页面重定向
问题描述:
我正在将ASP经典网站迁移到ASP.net MVC。
有没有办法将旧流量重定向到新流量?如何设置MVC路线来处理旧的ASP经典页面重定向
例如:如何去从:
www.mydomain.com/viewpage.asp?pageid=1234
到:
www.mydomain.com/page/1234
答
研究我发现,最好的办法是把问题:
- 使用重定向引擎(如urlrewriter.net)
- 重定向中的BeginRequest方法
我结束了使用#2,因为它对我的项目更简单
Sub Application_BeginRequest(ByVal sender As Object, _
ByVal e As System.EventArgs)
Dim fullOriginalpath As String = Request.Url.ToString.ToLower
If (fullOriginalpath.Contains("/viewpage.asp?pageid=")) Then
Context.Response.StatusCode = 301 'issue a permanent redirect'
Context.Response.Redirect("/page/" + getPageIDFromPath(fullOriginalpath))
End If
End Sub
您也可以使用Context.RewritePath
,但它不会更改客户端浏览器中的网址。
答
看样子你可能在404错误页面,使用Response.Redirect并映射输入到查询字符串所需的新页面。四围的方式,但工作
是的,这也可以。 – 2009-06-26 19:17:21