網站收錄

多語言與多地区站点的收錄梳理:先把這几组 URL 關系理清

多語言、多地区站点的收錄問题,往往出在 URL 關系没理清。本文按排查顺序梳理各語言版本的獨立入口、canonical 與 hreflang 的分工、URL 结构的取舍,以及容易造成重复收錄的几種常见情况,並给出一份可以直接照做的自查清單。

網站收錄

多語言與多地区站点的收錄梳理:先把這几组 URL 關系理清

站点做了多語言或多地区版本之後,收錄問题往往不是“收錄太慢”,而是頁面之間的關系没理清。同一份内容存在几個 URL、語言切換靠跳轉、canonical 指错版本,都會让搜尋引擎在判断“哪個頁面该進索引”时反复摇摆。下面按排查顺序说几组最關键的關系。

一、先確認每種語言版本都有獨立、可直達的 URL

抓取工具不會点击語言下拉框,也不會儲存你站点上的語言偏好 cookie。如果語言版本只能通過 JS 跳轉、彈窗或按钮切換,抓取端通常只能看到預設語言那一版。

  • 語言切換入口用普通連結,指向對應語言的真實 URL;
  • 不要用 IP 或 Accept-Language 把請求自動 302 到另一個語言版本;
  • 不要让 cookie 决定返回哪種語言,否則抓取端看到的頁面和你自己看到的不一定是同一個。

二、canonical 和 hreflang 各管一件事,別互相顶

hreflang 說明“這些頁面是同一内容的不同語言版本”,canonical 說明“這個頁面本身的規范地址”。两者作用不同,處理方式也不同:

  • 每個語言版本對自己做 self-canonical,不要全部指向預設語言版本;
  • hreflang 标注要双向,A 指向 B,B 也要指向 A,並確認目标 URL 可訪問、返回 200;
  • 可以补一個 x-default,作為没有匹配語言时的兜底版本。

如果 canonical 全部指向中文版,而 hreflang 又声明英文版是獨立版本,這两個信号就是冲突的,收錄结果容易只剩一版,或者在几版之間来回切換。

三、URL 结构上的几種常见做法

  • 子目錄(/en/、/zh/):结构清晰,權重集中,是多數站点的預設選擇;
  • 子域名(en.example.com):适合不同团队或不同技術栈维護,但要額外處理彼此之間的連結關系;
  • 參數形式(?lang=en):能被识別,但容易被当成同一頁面的參數變体,收錄判断更麻烦;
  • 獨立域名:地区定位最明确,维護成本也最高。

選定一種之後尽量全站统一,混用會让 URL 归一化變得很难做。

四、最常造成收錄混乱的几種情况

  1. 机翻頁面批量上线,内容质量低且高度相似,在索引里容易被合並或排除;
  2. 同一語言下存在多個 URL 指向同样内容,比如带與不带结尾斜杠、大小寫不一致;
  3. canonical 指向了一個本身就不该被收錄的地址,比如带參數的篩選頁;
  4. 語言切換連結带上了跟踪參數,被当作新 URL 抓取。

五、sitemap 和内鏈怎么配合

把所有語言版本的 URL 都放進 sitemap,並在 sitemap 内标注 hreflang,可以减少“只發現了一種語言”的情况。内鏈上,各語言版本之間應该有稳定入口,而不是只能靠首頁的切換按钮。預設語言版本可以适当多给一些内鏈,其余版本至少保證從任意頁面两三次点击内能到達。

六、按這個顺序自查

  1. 随机抽几個語言版本,用不带 cookie 的方式直接訪問,看返回的是不是對應語言;
  2. 检查每個版本的 canonical 是否指向自己;
  3. 检查 hreflang 是否双向、是否存在失效目标;
  4. 在 Search Console 里按語言分组看索引覆盖,留意被判為“替代為其他規范網頁”的比例;
  5. 確認 sitemap 與頁面内的 hreflang 标注一致。
多語言站点的收錄問题,多數不是“内容不够好”,而是几種信号在互相矛盾。先把 URL 归属和指向统一,再回头讨论内容质量那條线。