canonical标签怎么用 重复内容的收敛方法

KLWIN SEO 团队 2026-10-09 约 4 分钟读完 约 1,522 字 287 次阅读
canonical标签怎么用 重复内容的收敛方法
canonical标签怎么用 重复内容的收敛方法

重复内容不一定是你抄别人,更多是自己造成的:带参数和不带参数、www 和非 www、分页、打印页、筛选页。每个版本都是一个 URL,权重被摊薄。

canonical 的作用是告诉搜索引擎:"这几个地址里,以这一个为准。"

一、什么时候该用

场景是否用 canonical
带跟踪参数的 URL是
筛选/排序页是(指向主列表页)
打印版页面是
内容分页否(每页指向自己)
移动版与 PC 版否(用 alternate 互指)
真正不同的内容否

二、正确写法

四个要点:

  • 用绝对地址,带协议和域名。
  • 指向的页面必须返回 200,不能是 301 或 404。
  • 每个页面只写一个 canonical。
  • canonical 指向的页面,自身也要 canonical 到自己(形成闭环)。

三、五个常见错误

1. 全站 canonical 都指向首页

这是最严重的错误。等于告诉搜索引擎"所有页面都是首页的副本",内页会全部掉出索引。

2. 分页页 canonical 指向第一页

会导致第 2 页之后不被收录,那些页面上的文章也就难以被发现。

3. canonical 指向 404 或重定向地址

信号失效,搜索引擎会忽略这条 canonical。

4. canonical 与 noindex 同时用

矛盾。要么规范化,要么不收录,二选一。

5. 动态插入 canonical

用 JS 插入的 canonical,可能不被识别。必须在 HTML 源码里。

四、canonical 和 301 怎么选

核心区别:301 是"这个地址不要了",canonical 是"这个地址还在,但请以另一个为准"。

  • 旧地址永久不用了 → 301。
  • 两个地址都需要能访问(比如带参数的分享链接)→ canonical。

能用 301 就用 301,信号更强。canonical 是次优方案。

五、怎么验证

  1. 查看页面源码,确认 canonical 存在且地址正确。
  2. 用 curl -I 确认 canonical 指向的 URL 返回 200。
  3. 在搜索资源平台的"索引"报告里看"重复网页,用户未选定规范网页"的数量。
  4. 谷歌在 Search Console 的"网页索引编制"里会显示"已选择其他规范网页"的原因。

六、从源头减少重复

canonical 是补救,更好的做法是根本不产生重复 URL:

  • 统一 www 和非 www(301)。
  • 统一 http 和 https(301)。
  • 筛选页用参数时,加 robots 屏蔽或 noindex。
  • 分页 URL 规范化,避免 ?page=1 和 / 并存。

canonical 与分页的配合

列表分页的每一页都应该 canonical 到自己,而不是全部指向第一页。否则第二页之后的内容很难被收录,里面的文章也就少了被发现的机会。

如果分页内容确实重复度高,可以在第二页起加 noindex,follow——既不占索引,又能让蜘蛛顺着链接继续走。

分页的 canonical 写法

列表分页的每一页都应该 canonical 到自己,而不是全部指向第一页。否则第二页之后的内容很难被收录,里面的文章也少了被发现的机会。

如果分页内容确实重复度高,可以在第二页起加 noindex,follow——既不占索引,又能让蜘蛛顺着链接继续走。

参数页、筛选页用 canonical 指向主页面,不要每个参数都单独收录。重复内容收敛后,抓取预算才够用。

常见问题

canonical 会被忽略吗

会。如果搜索引擎认为你的 canonical 不合理(比如指向不相关页面),会忽略它,自己判断。

跨域 canonical 有用吗

有用,比如内容同时发布在自己站和合作媒体上,可以 canonical 到原创站。但对方要配合。

百度支持 canonical 吗

支持,但识别能力不如谷歌。百度更认 301。

重复内容的整体治理,见站内结构优化。

K

KLWIN SEO 团队

KLWIN康林旺 内容团队,长期处理企业官网建设、CMS 模板开发与搜索优化的实际项目。文章里的数据和方法,来自交付过程中的记录,不引用未经核实的结论。

上一篇301重定向的六个错误配置 很多站都中招
下一篇 网站监控怎么做 可用性与性能告警配置
RELATED

继续阅读

客服头像
正在连接...
👋
开始聊天前,请告诉我们您的称呼
客服 正在输入