我将项目从html转换为aspx
问题是,所有扩展都改变了。
e.g。 “ www.example.com \ index.html ”已更改为“ www.example.com \ index.aspx ”
给SEO带来了问题。
所以现在当我搜索网页时,我得到链接为www.example.com \ index.html,如果我尝试进入它,它会给我 404文件找不到的错误
我为URL-ReWriting尝试了几种方法,它在本地端工作正常,但在服务器端失败。
我都试过Global.asax
1
Protected Overloads Sub Application_BeginRequest(ByVal sender As Object, ByVal e As System.EventArgs)
Dim CurrentPath As String = Request.Path.ToLower()
Dim strPageName As String = CurrentPath.Substring(CurrentPath.LastIndexOf("/") + 1, (CurrentPath.LastIndexOf(".") - CurrentPath.LastIndexOf("/")) + 4)
If strPageName.EndsWith(".html") Then
Select Case strPageName
Case "index.html"
RewriteUrl(CurrentPath)
End Select
End If
End Sub
Protected Sub RewriteUrl(ByVal URL As String)
Dim CurrentPath As String = URL
CurrentPath = CurrentPath.Replace(".html", ".aspx")
Dim MyContext As HttpContext = HttpContext.Current
MyContext.RewritePath(CurrentPath)
End Sub
2
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
RegisterRoutes(RouteTable.Routes)
End Sub
Shared Sub RegisterRoutes(ByVal routes As RouteCollection)
routes.Add("Index", New Route _
( _
"index.html", New CustomRouteHandler("~/index.aspx") _
))
End Sub
答案 0 :(得分:0)
您是否拥有对Web服务器的控制权?您最有可能需要SEO的方法是创建永久(301)URL重定向,您可以在Web服务器级别执行...通常在服务器设置或脚本文件中。
请参阅:http://en.wikipedia.org/wiki/URL_redirection
我意识到这并没有直接回答你的问题,但如果你要做的就是将搜索结果带到正确的新页面,这是最好的方法。