SEO 百科

自动重定向

本页目录

自动重定向

自动重定向指服务端或脚本按访客的语言、地区、设备等条件,把请求转到另一个网址[1]。做国际站时,常见做法是按语言判断后自动跳到对应版本。问题是爬虫从哪里来、带什么语言偏好,站长并不掌握,跳转的结果也就不受控。

按语言与地区跳转的问题

Google 明确不建议按猜出来的语言自动跳转。它写道,“Avoid automatically redirecting users from one language version of a site to a different language version of a site”[3]。理由是这类跳转会让用户和引擎都看不到全部语言版本[3]。

引擎爬虫的发源地也和真实用户不同。Google 说明,Googlebot 通常从美国发起,发出的请求里不设置 Accept-Language 标头[3]。按语言偏好做跳转的逻辑,对它几乎不成立。

跳到哪个版本不可控

即便跳转能生效,跳到哪个版本也由地理位置和请求标头决定,而这些都在站长掌控之外。Yandex 描述过这种情形:如果按访客的 IP 地址跳转,爬虫的 IP 未必落在目标地区的 IP 段里,结果搜索里可能显示任意一个版本[1]。

后果有两个。一是页面内容与站长想给用户看的不一致;二是同一份内容被多个语言版本分摊,重复内容的判断反而更乱[1]。

正确做法

Google 给的做法是每种语言用各自的网址,再用 hreflang 标注各版本对应关系[3]:

<link rel="alternate" hreflang="zh-cn" href="https://www.example.com/zh-cn/">
<link rel="alternate" hreflang="en" href="https://www.example.com/en/">
<link rel="alternate" hreflang="x-default" href="https://www.example.com/">

几条要点:

  • 不要用 Cookie 或浏览器设置切换语言,要用不同网址[3]。
  • 在页面上放语言切换入口,让用户自己选[3]。
  • 用地理位置跳转时,务必让爬虫抓到和用户相同的版本[1]。
  • 保留一个自动判断语言的默认版本,用 hreflang="x-default" 标出来[2]。

Yandex 的建议是,把候选版本都配成返回 200 的状态,改用页面上的语言或地区开关,而不是重定向[1]。

与移动重定向的区别

按设备把桌面页转到移动页,与按语言跳转是两回事。设备跳转的目标相对确定,桌面与移动版本也容易一一对应;语言跳转依赖的条件更模糊,出错的面更大。两者可以并存,但要分开判断:设备用 user-agent,语言用 hreflang 和页面入口[3]。

附录

参见

参考资料

官方(境外)

  1. 《Processing redirects》,Yandex,2026-10-08 访问。
  2. 《Indexing localized pages》,Yandex,2026-10-08 访问。
  3. 《管理多区域和多语言网站》,Google 搜索中心,2026-10-08 访问。

外部链接

无。