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]。
附录
参见
参考资料
官方(境外)
- 《Processing redirects》,Yandex,2026-10-08 访问。
- 《Indexing localized pages》,Yandex,2026-10-08 访问。
- 《管理多区域和多语言网站》,Google 搜索中心,2026-10-08 访问。
外部链接
无。