301 重定向与相对 = 规范

Posted

技术标签:

【中文标题】301 重定向与相对 = 规范【英文标题】:301 Redirect vs. Rel=Canonical 【发布时间】:2012-10-28 23:57:23 【问题描述】:

在我们的网站上,可以跨域访问特定于区域设置的 URL。

假设我们有两个 URL:dog.aspx(英语)和 hund.aspx(德语)。

以下网址有效:

www.example.com/hund.aspx(显示英文内容,不是德文,但网址是德文) www.example.de/hund.aspx(正确的网址)

要解决这个问题,我们有两种选择:

www.example.com/hund.aspx 重定向到www.example.com/dog.aspx

www.example.com/hund.aspxwww.example.com/dog.aspx 中有canonical URL

什么更可取? 301 重定向或canonical 网址?

【问题讨论】:

【参考方案1】:

301 重定向优于 canonical 声明。

用户代理无法绕过重定向,而 canonical 只是一个建议,a) 并非所有用户代理都支持,b) 甚至支持它的用户代理也没有遵循它。

RFC 6596 recommends 这个也是:

在添加规范链接关系之前,建议验证以下内容:

    […]

    对于 HTTP,永久 HTTP 重定向([RFC2616] 的第 10.3.2 节)是 IRI 内容已被永久移动的传统强指标,无法代替规范链接关系实施。

    […]

【讨论】:

【参考方案2】:

Cananical URL 仅在内容相同时使用,以避免谷歌对重复内容的处罚。由于内容使用不同的语言,因此不完全相同,所以这不是问题。

听起来您所追求的是 hreflang 标记。你可以阅读更多关于如何实现它here

基本上你会使用这样的东西:

<link rel="alternate" hreflang="de" href="www.abc.de/hund.aspx" />

&lt;link rel="alternate" hreflang="en-us" href="www.abc.com/hund.aspx" /&gt;

【讨论】:

但是内容是重复的,因为两个 URL 都指向相同的内容,即 www.abc.com/dog.aspx 和 www.abc.com/hund.aspx 都显示英文版本。跨度> 【参考方案3】:

使用 301 重定向,它比规范传递更多的链接汁。这是一个重复的内容,不同的URL,重定向可以完美解决。

【讨论】:

【参考方案4】:

我建议同时使用 301 重定向和 hreflang 标记,这不是内容问题,因为相同的内容使用不同的语言,但重定向会有所帮助。因为内容是德语和英语,所以有一个 hreflang 标记很重要。

【讨论】:

以上是关于301 重定向与相对 = 规范的主要内容,如果未能解决你的问题,请参考以下文章

SEO 和 301 重定向 - 它们可以有相对路径还是必须是绝对路径?

对动态短网址使用 301/303/307 重定向

301,302,303,307重定向区别

301重定向与302跳转有什么区别?

关于重定向301与302状态码的问题

Laravel 重定向301与302