2009-06-04 57 views
1

我运营一个小型电子商务网站,在过去几年中已经建立了一个合理的搜索引擎状态。搜索引擎优化帮助替换网站

我一直在使用新的URL格式的新网站工作,我担心如何处理所有断开的链接和客户沮丧的用户通过搜索引擎找到过期的链接。

任何人都可以提供有关如何减轻/减少损害的建议吗?旧网站在ASP.NET中完成ASP.NET MVC中的新功能

感谢您的任何帮助。

回答

4

您将需要某种并行结构。理想情况下,旧网站的旧网址在一段时间内仍然可以完全访问,但不会再被索引。 如果这不可行,并且由于您认为该网站很小,您可以建立一个新旧URL映射,并拥有一个尝试重定向到新内容的404处理程序。

+0

感谢您的帮助。今天花了一些时间,它看起来不像昨晚午夜那样糟糕! 为建议欢呼。几乎和你所说的一样 – Remmus 2009-06-05 12:50:00

1

您可以设置旧网站的.htaccess文件以将流量重定向到新网站。除此之外,您可以使用mod_rewrite将请求映射到旧网站上的页面到新页面上的相同(或类似)页面。

+0

ASP网站,mode_rewrite不会真正帮助在这里。 – 2009-06-04 23:24:34

+0

谢谢。我从来没有使用过ASP,所以我不知道这个事实。 – 2009-06-05 00:40:01

2

您应该为要保留的链接创建永久重定向(routelevel)。这样搜索引擎会更新他们对新位置的引用。

2

正如CDonner所说,您想要一个处理程序将流量重新路由到相应的目标。更重要的是,你是否想要确定何时重定向客户端,你发送的状态代码是301(永久移动)而不是404。如果你的网站上有很多404错误,搜索引擎会给你带来负面评价你会看到你的站立减少而不是增加。

0

听起来就像你已经想通了,但只是想添加一个选项 - 规范标签 - 如果出于任何原因需要保持旧的URL和新的URL活动,可能会有优势。您可以在旧网址上创建页面的副本,然后添加“canonical”标签,该标签告诉搜索引擎“请将该页面的链接信用额记入以下页面:www.site.com/newpage”

<link rel="canonical" href="http://www.yoursite.com" /> this line goes in before </head>

例如,如果您有很多指向某些关键页面的链接,并且这些链接指向旧网址,这可能是一个帮助。

301也会重定向链接信用,并且一般会移动您希望使用301重定向的页面。哦,如果您使用URL重写规则以及所有URL的更改方式相同,则可以在重写规则中使用正则表达式来一步处理所有这些规则。

1

这是我做的从旧的ASP经典的网站迁移方式:

Sub Application_BeginRequest(ByVal sender As Object, ByVal e As System.EventArgs) 
    Dim fullOriginalpath As String = Request.Url.ToString.ToLower 

    If (fullOriginalpath.Contains("/viewitem.asp?itemid=")) Then 
     Context.Response.StatusCode = 301 
     Context.Response.Redirect("/item/" + getItemIDFromPath(fullOriginalpath)) 
    ElseIf (fullOriginalpath.Contains("/search.asp")) Then 
     Context.Response.StatusCode = 301 
     Context.Response.Redirect("/search/") 
    ElseIf (fullOriginalpath.EndsWith("/default.asp")) Then 
     Context.Response.StatusCode = 301 
     Context.Response.Redirect("/") 
    End If 
End Sub