整合重复网址

如果您的某个网页可通过多个网址访问,或者您的不同网页包含类似内容(例如,某个网页既有移动版,又有桌面版),那么 Google 会将这些网页视为同一个网页的重复版本。Google 会选择一个网址作为规范版本并抓取该网址,而将所有其他网址视为重复网址并降低对这些网址的抓取频率。

如果您未明确告知 Google 哪个网址是规范网址,Google 就会替您做出选择,或将这两个版本视为同等重要,这可能会导致出现一些不当的行为,如选择规范网址的原因部分所述。

Googlebot 如何将网站编入索引并选择规范网址

当 Googlebot 将某个网站编入索引时,它会尝试确定每个网页的主要内容。如果 Googlebot 在同一网站上发现了多个似乎包含相同内容的网页,则会选择它认为最完整且最实用的网页,并将其标记为规范网页。为了减少 Google 对您网站的抓取工作量,我们会经常抓取规范网页,而不会频繁地抓取重复网页。

Google 会根据许多因素(即“信号”)选择规范网页,例如:网页是通过 HTTP 还是通过 HTTPS 提供、网页质量、站点地图中是否出现了相应网址,以及任何 rel=canonical 标签。您可运用上述方法告知 Google 您更愿意使用哪个网页,但 Google 仍可能会因各种原因另选一个网页作为规范网页。

对于同一网页的不同语言版本,仅当这些网页的主要内容采用相同的语言时,才会被视为重复网页(也就是说,如果仅网页的页眉、页脚和其他非重要文字翻译了,但其正文部分未变,那么这些网页会被视为重复网页)。

在评估内容和质量时,Google 会以规范网页为主要依据。Google 搜索结果通常会指向规范网页,除非某个重复网页明显与用户的查询更相符。例如,如果用户使用的是移动设备,那么即使桌面版网页被标记为规范网页,搜索结果也可能会指向移动版网页。

保留类似或重复网页的合理原因

有很多合理原因可能会导致您的网站上有多个不同的网址指向同一个网页,或者内容重复或非常相似的网页位于不同的网址。以下是最常见的原因:

  • 为了支持多种设备类型
    https://example.com/news/koala-rampage
    https://m.example.com/news/koala-rampage
    https://amp.example.com/news/koala-rampage
  • 为了启用搜索参数或会话 ID 等所需的动态网址
    https://www.example.com/products?category=dresses&color=green
    https://example.com/dresses/cocktail?gclid=ABCD
    https://www.example.com/dresses/green/greendress.html
  • 当您将同一篇博文同时放在多个版块中时,博客系统会自动保存多个网址
    https://blog.example.com/dresses/green-dresses-are-awesome/
    https://blog.example.com/green-things/green-dresses-are-awesome/
  • 服务器已配置为针对 www/非 www、http/https 变体提供相同的内容
    http://example.com/green-dresses
    https://example.com/green-dresses
    http://www.example.com/green-dresses
    
  • 您在相应博客上提供的要转载到其他网站上的内容与这些网域中的原有内容完全重复或部分重复:
    https://news.example.com/green-dresses-for-every-day-155672.html(转载博文)https://blog.example.com/dresses/green-dresses-are-awesome/3245/(原始博文)

选择规范网址的原因

从一组重复网页/类似网页中明确选择规范网页的原因有很多:

  • 指定您希望用户在搜索结果中看到的网址。您可能希望用户通过 https://www.example.com/dresses/green/greendress.html(而非 https://example.com/dresses/cocktail?gclid=ABCD)访问您的绿色礼服商品页。
  • 整合类似网页或重复网页的链接信号。明确选择规范网页可帮助搜索引擎将它们掌握的关于各个网址的信息(例如,指向它们的链接)整合到一个首选网址上。也就是说,从其他网站指向 http://example.com/dresses/cocktail?gclid=ABCD 的链接会与指向 https://www.example.com/dresses/green/greendress.html 的链接整合。
  • 简化单个商品/主题的跟踪指标。如果特定内容可以通过多个网址访问,获取此内容的综合指标的难度会更大。
  • 管理转载内容。如果您是为了将内容发布到其他网域而对其进行转载,那么您需要确保您的首选网址会出现在搜索结果中。
  • 避免花费时间抓取重复网页。您肯定希望 Googlebot 在您的网站上发现尽量多的内容,因此最好让 Googlebot 将时间用于抓取您网站上的新网页(或更新后的网页),而不是抓取相同网页的桌面版和移动版。

了解 Google 会将哪个网页视为规范网页

使用网址检查工具可了解 Google 会将哪个网页视为规范网页。

指定规范网页

要为重复网址或类似网页指定规范网址,请采用以下某种方法。请务必遵循常规指南

方法和说明
rel=canonical <link> 标记

在所有重复网页的代码中分别添加一个 <link> 标记,使其指向规范网页。

优点
  • 可以映射无限多个重复网页。

缺点

  • 可能会增加网页大小。
  • 在大型网站或网址经常改变的网站上维护映射可能会比较复杂。
  • 仅适用于 HTML 网页,不适用于 PDF 之类的文件。在这种情况下,您可以使用 rel=canonical HTTP 标头。
rel=canonical HTTP 标头

在网页响应中发送 rel=canonical 标头。

优点

  • 不会导致网页大小增加。
  • 可以映射无限多个重复网页。

缺点

  • 在大型网站或网址经常改变的网站上维护映射可能会比较复杂。
站点地图

在站点地图中指定您的规范网页。

优点

  • 易于执行和维护,尤其是在大型网站上。

缺点

  • Googlebot 仍必须为您在站点地图中声明的所有规范网页确定关联的重复网页。
  • 此方法向 Googlebot 发送的信号不如 rel=canonical 映射方法发送的信号强。
301 重定向 使用 301 重定向告知 Googlebot 重定向网址是比给定网址更佳的版本。请仅在弃用重复网页时使用此方法。
AMP 变体 如果您的某个网页变体是 AMP 网页,请按照 AMP 指南指明规范网页和 AMP 变体。

常规指南

无论使用哪种规范化方法,都请遵循以下常规指南:

  • 请勿使用 robots.txt 文件进行规范化。
  • 请勿使用网址移除工具进行规范化,它会从搜索结果中移除网址的所有版本。
  • 请勿使用相同或不同的规范化方法为同一网页指定不同的规范网址(例如,请勿既在站点地图中为某个网页指定一个规范网址,又使用 rel="canonical" 为同一网页另行指定一个规范网址)。
  • 请勿使用 noindex 阻止选择规范网页。此指令旨在从索引中排除网页,而不是管理对规范网页的选择。
  • 使用 hreflang 标记时,请务必指定规范网页。指定一个采用同一语言的规范网页;如果没有这样的规范网页,则指定一个采用最佳替代语言的规范网页。

  • 在网站中提供链接时,请务必链接到规范网址(而非重复网址)。始终链接到您认定的规范网址有助于 Google 了解您偏好的网址。

优先选择 HTTPS(而非 HTTP)网址作为规范网址

Google 会优先选择 HTTPS 网页(而非等效的 HTTP 网页)作为规范网页,除非存在如下问题或冲突情况:

  • HTTPS 网页的 SSL 证书无效。
  • HTTPS 网页包含不安全的关联功能(图片除外)。
  • HTTPS 网页会将用户重定向至 HTTP 网页或通过 HTTP 网页重定向用户。
  • HTTPS 网页包含指向 HTTP 网页的 rel="canonical" link

虽然我们的系统在默认情况下会优先选择 HTTPS 网页(而非 HTTP 网页),但您可通过执行以下任一操作来确保此行为始终都会发生:

  • 添加从 HTTP 网页指向 HTTPS 网页的重定向。
  • 添加从 HTTP 网页指向 HTTPS 网页的 rel="canonical" link
  • 实施 HSTS

为防止 Google 误将 HTTP 网页选为规范网页,请避免以下几种做法:

  • 避免使用错误的 TLS/SSL 证书和 HTTPS 到 HTTP 重定向,因为这会导致我们非常倾向于选择 HTTP 网页。即使实施 HSTS 也无法消除这种强烈的倾向。
  • 避免在站点地图或 hreflang 条目中包含 HTTP 网页(而不是 HTTPS 版本)。
  • 避免为错误的主机版本实施 SSL/TLS 证书。例如,在 example.com 上提供 www.example.com 的证书。此证书必须与您的完整网站网址匹配,或者必须是可用于同一网域上多个子网域的通配证书。

仅限高级用户:告诉 Google 忽略动态参数

使用“参数处理”功能告知 Googlebot 在抓取时应忽略哪些参数。忽略某些参数可减少 Google 索引中的重复内容,使您的网站更易于抓取。例如,如果您指定应忽略参数 sessionid,Googlebot 会认为以下两个网址是重复网址:

  • https://www.example.com/dresses/green.php?sessionid=273749
  • https://www.example.com/dresses/green.php

您可以在 HTML 的 head 部分使用 <link> 标记,指明某个网页与另一个网页重复的情况。

假设您想将 https://example.com/dresses/green-dresses 设为规范网址(即使有很多个网址指向该内容),那么您可通过执行以下步骤,将此网址指定为规范网址:

  1. 使用 rel="canonical" link 元素标记所有重复网页。

    将具有 rel="canonical" 属性的 <link> 元素添加到重复网页的 <head> 部分中,并使其指向规范网页。例如:

    <link rel="canonical" href="https://example.com/dresses/green-dresses" />
  2. 如果规范网页有移动版,请为其添加 rel="alternate" link,并使该链接指向此网页的移动版:
    <link rel="alternate" media="only screen and (max-width: 640px)"  href="http://m.example.com/dresses/green-dresses">
  3. 为此网页添加适当的 hreflang 或其他重定向。

对于 rel="canonical" link 标记,请使用绝对路径(而非相对路径)。

建议https://www.example.com/dresses/green/greendresss.html

不建议/dresses/green/greendress.html

使用 rel="canonical" HTTP 标头

如果您能配置服务器,则可使用 rel="canonical" HTTP 标头(而不是 HTML 标记)为 Google 搜索支持的文档(包括 PDF 文件等非 HTML 文档)指明规范网址。

目前,Google 仅支持在网页搜索结果中使用此方法。

如果您通过多个网址显示某个 PDF 文件,可以返回 rel="canonical" HTTP 标头,将该 PDF 文件的规范网址告知 Googlebot:

Link: <http://www.example.com/downloads/white-paper.pdf>; rel="canonical"

关于 rel="canonical" HTTP 标头的建议与 rel="canonical" link 标记相同。根据 RFC2616 的规定,只能在 rel="canonical" HTTP 标头中使用英文双引号。

使用站点地图

请分别为您的每个网页选择一个规范网址,然后通过站点地图提交这些规范网址。您在站点地图中列出的所有网页都会被视为向系统建议的规范网页;Googlebot 会根据内容相似度决定哪些网页是重复网页(如果有)。

我们不能保证一定会将站点地图中的网址视为规范网址,但您可通过这种简单的方法为大型网站指定规范网址,您也可以通过站点地图这种实用方法告知 Google 您认为自己网站上的哪些网页最重要。

请勿在站点地图中添加非规范网页。如果您使用站点地图,请仅在站点地图中指定规范网址。

对已停用的网址使用 301 重定向

如果您想移除现有的重复网页,但需要确保在停用旧网址之前顺利完成迁移,请使用此方法。

假定用户可通过以下几种方式访问您的网页:

  • https://example.com/home
  • https://home.example.com
  • https://www.example.com

您可从这些网址中挑选一个作为规范网址,并使用 301 重定向将来自其他网址的流量引导至您的首选网址。服务器端 301 重定向是确保将用户和搜索引擎定向到正确网页的最佳方式。301 状态代码表示网页已永久地迁移到新位置。

如果您使用了网站托管服务,请搜索该服务的参考文档,了解如何设置 301 重定向。

问题排查

如果规范网址所在的资源不归您所有,您将无法查看重复网页的任何流量。下面列出了一些导致规范网页位于其他资源中的常见原因:

  • 标记不当的语言版本:如果您有多个网站会向全球不同地区的用户显示实质类似的本地化内容,请务必遵循我们的网站本地化指南
  • 不正确的规范标记:某些内容管理系统 (CMS) 或 CMS 插件可能会错误地使用规范化技术指向外部网站上的网址。请检查您的内容,看看是否属于这种情况。如果您的网站所指明的首选规范网址出乎预料,则可能是由于错误地使用了 rel="canonical" 或 301 重定向,您应直接修正该问题。
  • 配置有误的服务器:某些托管配置错误可能会导致选择出乎预料的跨网域网址。例如:
    • 服务器可能被错误地配置为:针对 b.com 上某个网址的请求返回 a.com 的内容
    • 两个毫无关联的网络服务器可能会返回相同的软 404 网页,而 Google 未能将其识别为错误网页。
  • 恶意攻击:某些针对网站的攻击会植入返回 HTTP 301 重定向的代码,或者会在 HTML <head> 或 HTTP 标头中插入跨网域 rel="canonical" link 标记(通常会指向托管恶意内容或垃圾内容的网址)。在这些情况下,我们的算法可能会选择恶意或垃圾网址,而不是被入侵网站上的网址。
  • 仿冒网站:在极少数情况下,我们的算法可能会选择未经您允许就托管您内容的外部网站上的网址。如果您认为其他网站违反版权法抄袭了您的内容,可以与该网站的站长联系,要求其移除相关内容。此外,您还可以根据《数字千年版权法案》提交要求,要求 Google 从搜索结果中移除涉嫌侵权的网页。