Canonical标签用于解决重复内容问题,需在中添加绝对URL的标签,指向唯一权威页面,且目标页须返回200状态码、不与noindex冲突、不可全站指向首页。

直接在页面 中添加一条 标签,指向你认定的权威原始URL,搜索引擎就会把多个相似页面的权重集中到这个地址上。
什么时候必须加 canonical 标签
只要同一内容能通过多个 URL 打开,就该用。典型情况包括:
- 带参数和不带参数的地址共存,比如 /article?id=123 和 /article/123
- HTTP 与 HTTPS 版本都可访问
- www 和非 www 域名同时生效(如 www.example.com 和 example.com)
- 存在打印页、移动版页或 AMP 页等变体形式
怎么写才正确
标签必须放在 区域内,且 href 值要用绝对 URL:
立即学习“前端免费学习笔记(深入)”;
关键细节:
- href 必须含协议(https://)和完整域名,不能写成 /product-page 这样的相对路径
- 目标 URL 要能正常打开,返回 HTTP 200 状态码
- 每个页面只设一个 canonical,且只能指向自身,或明确指定的唯一权威页
- 不要和 301 重定向混用——已跳转的页面,canonical 应指向跳转后的地址
容易踩的坑
这些操作会让 canonical 失效甚至引发惩罚:
- 全站所有页面都指向首页,内页权重会被清零
- 动态生成时拼错 URL,比如漏掉 s(http://)、少斜杠或路径错误
- 在设置了 noindex 的页面上还加 canonical,逻辑冲突,搜索引擎可能直接忽略
- 网站改版后,旧页面的 canonical 没同步更新,仍指向已下线地址
验证是否生效
上线后可通过两种方式确认:
- 查看网页源代码,检查 里是否存在该标签,且 href 值准确无误
- 用 Google Search Console 的“URL 检查”工具提交任意一个带 canonical 的地址,看报告中是否识别出规范版本



















