同一篇文章,理论上只需要一个 URL。实际操作中,它很容易变成三五个:带 utm 的分享链接、带排序参数的列表跳转、加了大写字母的旧链接、http 与 https 并存、结尾斜杠与不带斜杠各一份,再加上打印页、AMP 版、历史域名。这些地址打开后内容基本一致,但只要各自被访问过、被链接过,就有可能分别进入索引。
多份副本同时被收录,通常不会让站点立刻受罚,但会带来三个持续的麻烦:索引里出现大量内容重复的条目、权重被摊薄到不同 URL 上、后续更新内容时要同步处理的位置变多。
副本是怎么产生的
- 跟踪与筛选参数:分享、广告、站内筛选排序生成的带参链接,内容往往和原始页一致。
- URL 书写差异:大小写、结尾斜杠、默认端口、http 与 https 混用。
- 功能型变体:打印版、纯文本版、AMP 版、带 ?output= 之类后缀的版本。
- 环境泄漏:测试域名、旧域名、CDN 域名被外部链接指向,且没有做跳转或访问限制。
- 分页与聚合:同一批内容既出现在列表页,又出现在标签页、归档页、作者页。
搜索引擎如何挑选主版本
面对内容相同的多个 URL,索引层一般会做聚合,保留一个作为代表,其余作为副本。选谁当代表,取决于多个信号的综合判断:
- 内链和外部链接指向哪一个更多;
- 哪一个出现在 sitemap 中、被提交得更明确;
- 页面上的 canonical 指向谁;
- 哪个 URL 更早存在、被访问得更稳定;
- 哪个版本的结构更完整(正文、标题、结构化数据齐全)。
这些信号互相冲突时,结果就不一定符合预期。比如 canonical 指向 A,但站内所有内链都指向 B,最终代表版本可能是 B。所以合并重复副本,靠的是把多个信号调成同一个方向,而不是只加一个标签。
被分别收录后会看到什么
- site 查询里同一篇文章能翻出好几条,标题和摘要几乎一样;
- 改完内容后,搜索结果显示的仍是旧版本,因为被更新的只是其中一个副本;
- 索引报告显示有效页面数明显高于实际文章数;
- 外链和点击被分散到不同 URL,单页的表现数据看起来都偏低。
只要出现其中一两条,就值得停下来排查,而不是继续加新内容。
自查:先列清主版本与副本
- 挑一篇有代表性的文章,用 site: 域名 + 标题关键词 查一遍,看能返回几个地址。
- 在日志或抓取统计里,找出同一个路径的不同书写形式,按请求量排序。
- 核对每个副本页面的 canonical,是否都指向同一个绝对地址,是否与协议、斜杠、大小写完全一致。
- 检查站内链接:导航、面包屑、相关推荐、分享按钮生成的链接,是否统一指向主版本。
- 检查 sitemap 是否只包含主版本,没有把带参链接、打印页一并提交。
如果同一个内容在不同环境里必须存在(例如预览站、测试站),优先用访问限制或 301 把它挡在索引之外,而不是依赖页面上的标签。
合并的处理顺序
顺序比手段更重要,从影响面小、可回退的动作开始:
- 确定唯一主版本:选结构最完整、最可能长期存在的那个地址,通常是干净的静态路径。
- 统一内链:把导航、正文链接、分享按钮全部改成指向主版本,这一步对代表版本的确认影响最直接。
- 补 canonical:所有副本页面写同一个绝对 URL,避免相对路径带来的歧义。
- 收敛 sitemap:只提交主版本,去掉参数链接和功能变体。
- 处理参数:可忽略的跟踪参数在站长工具中声明;影响页面内容的筛选参数,考虑做成可抓取但不参与索引的通道。
- 必要时 301:对确实重复、且没有保留价值的旧地址(历史域名、打印页)做永久跳转,比只加标签更明确。
- 观察与收敛:处理完成后,定期复查索引中副本条目的数量变化,避免新旧地址再次并存。
哪些副本值得保留
不是所有多版本都要合并。移动端与桌面端分属两套 URL 时,两者都可能有独立价值;多语言站的不同语言版本,也属于内容不同而非重复。真正需要收敛的,是内容相同、只是入口或书写方式不同的地址。
判断标准很简单:两个 URL 打开后,用户读到的正文是否完全一样?如果一样,就让其中一个当代表,另一个退出索引竞争。
小结
重复副本的问题,本质上是站点没有明确告诉搜索引擎“哪个地址才算数”。把它当成一次梳理入口的机会:先确定主版本,再统一内链和 sitemap,最后才用 canonical 和 301 收尾。做完之后,索引里的条目数会更接近文章的实际数量,更新同步也只需要盯一个地址。