网站收录

多语言版本的收录选择:hreflang、跳转和规范标记怎么配合

多语言站点经常遇到同一内容只有一版被索引、其他语言版本收不进来的情况。本文梳理索引如何选择主版本,自动跳转、hreflang 互引缺失、canonical 指向错误分别会造成什么影响,并给出一套按顺序执行的自查步骤,帮助你判断该保留哪一版、该修哪里。

网站收录

多语言版本的收录选择:hreflang、跳转和规范标记怎么配合

索引不会为每种语言各留一份

多语言站点常见的误解是:每个语言版本都是独立页面,所以都会被收录。实际情况是,索引空间是有限的,当同一份内容以多种语言或地区形式出现时,系统会尝试挑出一个主版本,其余的可能被归为备用版本。备用版本不算被惩罚,但它很难在非对应语言的查询里露脸。

所以多语言站的收录问题,往往不是“为什么没收录”,而是“为什么收的不是我想让用户看到的那一版”。

自动跳转是第一道坎

很多站点用服务器端做语言识别:根据 IP、浏览器语言或 Accept-Language 头,把用户 302 到对应的语言版本。这种做法对用户体验可能友好,但对抓取不友好。

抓取工具通常从默认地址或某个入口进来,如果它在第一步就被重定向走,那么原始语言的页面可能长期不被抓取,索引里只剩下被跳转到的那个版本。

如果必须做语言跳转,优先考虑在页面内用可见链接让用户切换,而不是在服务器层面强制重定向。

hreflang 是提示,不是收录开关

hreflang 用来告诉搜索引擎“这几个 URL 是同一内容的不同语言或地区版本”,帮助它在正确的语言查询里展示正确的版本。它本身不会让页面被收录,也不会阻止页面被收录。常见错误有:

  • 只有单向引用,A 页面写了指向 B,B 页面却没有指回 A。互相引用才能形成有效的关系。
  • 缺少自引用,页面没有把自己也写进 hreflang 列表。
  • hreflang 指向的 URL 返回 404,或重定向到另一个地址,关系断掉。
  • canonical 指向语言总页,同时 hreflang 又指向具体语言页,两个信号互相冲突。

规范标记应该指向自己

每个语言版本都是独立、完整的页面,canonical 应该指向自身,而不是统一指向某个主语言页面。把各语言版本都 canonical 到中文版,等于告诉搜索引擎“别收其他语言版本”,那么英文、日文页面的收录就会出问题。

只有在内容确实高度雷同、只是货币或单位差异、且你不指望它单独被检索时,才考虑收敛到一个规范地址。

机器翻译堆量会稀释整站质量

为了覆盖更多语言而批量套用翻译接口,得到的往往是语义生硬、术语不统一的页面。这类页面即使被抓取,也容易停在“已抓取,尚未编入索引”的状态——抓取成功了,但没有进入索引。

更麻烦的是,大量低质量的翻译页面会占用抓取预算,让真正重要的语言版本被挤到后面。

自查顺序

  1. 确认每个语言版本都有独立的、可直接访问的 URL,不依赖 JavaScript 才显示正文。
  2. 检查是否存在基于 IP 或浏览器语言的强制跳转,先把它改成可选的切换入口。
  3. 确认 hreflang 互相引用完整,包含自引用,且目标 URL 能正常返回 200。
  4. 检查每版的 canonical 是否指向自身。
  5. 查看索引覆盖率报告,区分“已收录”和“备用网页”两类状态,看哪些语言版本被归到了备用。
  6. 对内容雷同的语言版本,决定是保留、合并还是加厚内容,而不是放任不管。

关于“备用网页”这个状态

索引报告里出现“备用网页(有适当的规范标签)”并不一定是坏事。它说明系统识别出了这一页和另一页内容相近,并且选择了一个主版本。你需要判断的是:这个主版本是不是你希望被检索的那个。如果不是,回到 hreflang 和 canonical 的设置上找原因,而不是急着提交重抓。

调整完标记后,给系统留出重新评估的时间。索引选择是抓取、内容比对和质量评估共同作用的结果,改一个标签不会立刻改变结论。