多語言或多地区站点在蜘蛛眼里,常常是同一套内容有多份地址。如果每個版本之間的關系没有交代清楚,蜘蛛抓取时就會犹豫:哪一份是给這個地区看的,哪一份只是备選。犹豫的结果往往是重复抓取、版本挑错,或者某個語言版本長期不被收錄。
下面從站点运营的角度整理一份自查清單,不涉及大規模改造,先把現状摸清楚,再决定要不要調整。
先搞清楚站点到底有几個語言版本
很多团队以為自己只有一個中文站,實际上可能同时存在:主站、地区子目錄、第三方托管的帮助中心、歷史遗留的二級域名。這些入口如果都返回相似正文,就需要明确的信号来区分。
建议先列一張表,把每個語言或地区版本對應的 URL 前缀、頁面模板、内容来源寫清楚。表格不用复杂,能回答這個地址归谁管、内容從哪来就够了。
逐項自查
1. hreflang 是否双向互指
hreflang 的基本要求是互相指認:A 頁面声明自己對應 B,B 也要声明對應 A。單向标注會让蜘蛛只看到一半關系。核對时随机抽几组頁面,检查每種語言的标注是否都出現在同一组頁面里。
另外注意 x-default 的使用。它是给没有明确語言偏好的用戶准备的兜底版本,通常指向語言選擇頁或預設版本,不要随便挂在某個具体地区頁上。
2. 語言代碼是否規范
語言代碼用两位小寫,地区代碼用两位大寫,例如 zh-CN、en-US、pt-BR。寫成 zh_CN、ZH-cn、en_US 這類形式,解析结果可能和预期不一致。這類問题通常来自模板拼接,改一處就能全站生效。
3. 是否存在强制跳轉
按 IP 或浏览器語言自動跳轉,對真實用戶可能方便,但對蜘蛛不友好:它從某個地址進来,却拿到另一個地址的内容,容易把两邊信号搅在一起。比較稳妥的做法是保留原地址可訪問,用明顯但不强制的方式提示用戶切換語言。
4. 站点地图是否按語言拆分
把所有語言的 URL 塞進一個站点地图,维護时容易出错。按語言或地区拆成多個 sitemap,在索引文件里分別列出,出現異常时能快速定位是哪一组地址的問题。地图里放的應该是各語言版本自己能訪問的 URL,而不是重定向後的地址。
5. 正文是否被机器翻译糊過去
如果某個語言版本只是整段机翻、没有人工過一遍,頁面质量會明顯偏低。這不是纯技術問题,但會影响蜘蛛對這個版本的判断。运营上至少保證核心頁面有人校對,标题、導航、按钮這些位置不要出現明顯的翻译错誤。
几個容易忽略的坑
- 語言切換連結指向首頁,而不是目前頁面對應的語言版本。
- 部分頁面漏标,導致整组對應關系断裂。
- 舊版語言目錄已经下线,但外鏈和内鏈還指着它。
- canonical 指向了另一個語言版本,把本该分開的頁面强行合並。
建议按這個顺序處理
- 整理語言版本清單,标注 URL 前缀和负责人。
- 抽查若干组頁面,確認标注双向、代碼規范。
- 检查是否存在强制跳轉,確認蜘蛛能拿到原始地址的内容。
- 拆分或重建站点地图,按語言分组。
- 修复語言切換連結,让它指向目前頁的對應版本。
- 记下修改時間,過一段時間回看服務器日誌里各語言版本的抓取分布。
多語言站点的重点不是标注得多漂亮,而是让蜘蛛清楚知道每個地址對應哪一類用戶。關系理顺之後,抓取和展示上的偏差通常會自然减少。