网站收录

canonical 指错了地方:页面收录了,索引里挂的却是另一个地址

有些页面确实进了索引,但在索引里被挂在另一个 URL 下,这多半和 canonical 的写法有关。本文梳理 canonical 常见的几种错位情况、它与 301 和 noindex 的分工,以及从哪几个入口去核对,帮助站点把地址关系理清楚。

网站收录

canonical 指错了地方:页面收录了,索引里挂的却是另一个地址

现象:收录有了,但不是你要的那个地址

在索引报告或 site 查询里,经常能看到这样的结果:页面本身内容没问题,也确实被抓取和收录了,但索引里显示的地址是另一个 URL,可能是首页、栏目页,也可能是带参数的版本。点进去内容大致一样,于是有人以为“收录正常”,忽略了真正参与索引的并不是目标地址。这种错位多数和 canonical 标签有关,也可能是重定向、内链、站点地图几处口径不一致叠加的结果。

canonical 常见的几种写错方式

  • 全站写死同一个地址。模板里把 canonical 写成首页或某个固定 URL,所有页面都指向它,等于告诉搜索引擎“这些页面都是同一份内容的副本”。
  • 列表页、筛选页统一指向第一页。翻页和筛选后的地址各自有内容,却都被声明为第一页的副本,时间一长,被索引的是第一页,后面的内容无处安放。
  • 示例地址没替换。开发阶段留下的 example.com 或测试域名忘了改,canonical 指向了站外地址。
  • 一个页面出现多个 canonical。头部由不同组件重复输出,搜索引擎只能挑一个,结果往往不是你想要的那个。
  • 桌面版和移动版互指混乱。移动端页面 canonical 指向桌面版、桌面版又指回移动端,形成循环。

canonical 不是“必须收录我”的声明

canonical 表达的是“这几份内容里,我认为哪一份更有代表性”,它是一条建议,不是命令。搜索引擎会结合内链、站点地图、重定向历史、内容相似度一起判断,最终挂哪个地址,不一定和 canonical 一致。

所以当 canonical 指向的地址本身不可抓取、被 robots 屏蔽、返回 404 或 5xx 时,这个信号会被忽略,甚至起到反效果。写 canonical 之前,先确认目标地址是能正常访问、能被抓取的 200 页面。

自查与修复的顺序

  1. 先在索引里确认实际挂的是哪个地址,再看这个地址和目标地址各自的 canonical、状态码、可抓取性是什么。
  2. 检查模板输出,确认 canonical 是“每页自指”还是“统一指向”。
  3. 核对内链、站点地图、分页 rel 是否和 canonical 口径一致。
  4. 修好后重新提交,等重抓生效,再观察索引里的地址是否变化。

如果某份内容确实应该退出索引,用 noindex 或 301,比在 canonical 上做文章更直接:canonical 既不保证彻底移除,也不保证一定合并。

几个容易混淆的分工

  • 去重合并:canonical 适合表达同类内容中哪一版更有代表性。
  • 旧地址退场:永久迁移用 301,比 canonical 更明确。
  • 整页不参与索引:用 noindex,但不要同时屏蔽抓取,否则信号读不到。

把这三件事分开处理,地址关系会比“全站都写一个 canonical”清楚得多。