结论:geo 定向负责「把用户送到合适版本」,hreflang 负责「告诉搜索引擎版本间的关系」,两者是分工不是替代。

① 先用 hreflang 在页面头部声明各语言/地区版本的对应关系,保证搜索引擎理解这是一组替代页面,避免被判重复内容。

② 再用 geo 定向(CDN、服务器或前端跳转)把用户导向其地区版本,但跳转要用 302 或前端提示,别用 301 把爬虫也永久重定向走。

③ 每个地区版本要有独立可抓取的 URL,不要靠 cookie 动态切换同一 URL 的内容,否则爬虫只能看到一个版本。

④ 上线后用 Search Console 的国际定位报告和日志检查抓取是否正常,确认各版本都被索引。