網站收錄

多語言與地区版本頁面:索引混在一起时先查這几處

多語言或多地区站点的收錄問题,多數出在版本關系没理清:入口連結藏在 JavaScript 里、canonical 跨語言指向、按 IP 自動跳轉,都會让部分語言版本迟迟不進索引。本文按 URL、連結、canonical、hreflang、站点地图與内容本地化六個点给出可执行的排查顺序。

網站收錄

多語言與地区版本頁面:索引混在一起时先查這几處

做多語言或多地区站点时,收錄問题往往不是“有没有被抓到”,而是版本之間的關系没理清:有的語言版本一直不進索引,有的進了却在搜尋结果里互相顶替,還有的干脆只留下預設語言那一版。這類問题排查起来並不复杂,關键是先想清楚一件事——每個語言、每個地区的頁面,在索引里都應当是一個可以獨立存在的頁面。

語言版本不是同一個頁面的副本

搜尋引擎的索引以 URL 為單位。同一個产品頁的中文版、英文版、日文版,只要 URL 不同、内容語言不同,就是三個獨立頁面,各自需要被抓取、被判断、被收錄。hreflang 的作用只是告诉搜尋引擎“這几個 URL 是同一内容的不同語言版本,請分別给對應語言的用戶”,它不是收錄開關,也不會因為你寫了 hreflang 就一定收錄,更不會自動解决重复内容問题。

三種常见的收錄失衡

  • 只收錄預設版本:其他語言版本的入口連結藏在 JavaScript 語言切換器里,渲染前看不到 URL,這些地址就容易長期停在“已發現”之外。
  • 版本之間被当成重复:canonical 寫成了跨語言指向,比如英文版把 canonical 寫给中文版,搜尋引擎就會把英文版合並掉。
  • 同一 URL 内容不稳定:靠 IP 或浏览器語言做 302 自動跳轉,爬虫每次訪問拿到的内容都可能不一样,很难判断這個 URL 到底代表什么。

按這個顺序自查

  1. 每個語言或地区版本是否有獨立、稳定、不带會话參數的 URL。
  2. 語言切換器是否輸出可抓取的 a 标簽連結,而不是纯 JS 事件或表單提交。
  3. 各版本的 canonical 是否指向自身,而不是指向其他語言版本。
  4. hreflang 是否双向返回、是否包含自身、代碼寫法是否统一,zh-CN、en、en-US 這類标记不要混着用。
  5. 站点地图是否按語言分別列出 URL,或至少用對應属性标注版本關系。
  6. 各版本内容是否只是机翻堆叠,标题、描述、正文有没有做最基础的本地化。

自動跳轉與預設版本的處理

按 IP 或 Accept-Language 自動跳轉,對真人体驗友好,對抓取却容易造成困扰:同一個 URL 返回的内容随訪問者變化,爬虫很难确定它的主题,也就更容易被归為重复或低價值。比較稳妥的做法是保留一個明确可訪問的預設版本,用頁面上可见的語言連結引導用戶切換,把選擇權交回訪問者。

canonical 與 hreflang 的分工

這两個标簽常被混用。canonical 解决的是“同一語言、同一地区内出現多條相似 URL 时,哪條算主版本”;hreflang 解决的是“不同語言或地区版本之間的對應關系”。canonical 跨語言指向,會直接压掉另一個語言版本的收錄;hreflang 寫反了,通常只是不起作用。所以排查时先看 canonical 有没有指错,再检查 hreflang 是否成對出現。

怎么判断多語言收錄是否正常

可以在索引报告里按目錄或語言前缀分组观察,看每個語言版本是否都有被收錄的 URL。如果某個語言版本長期為零,優先回到上面的自查顺序:入口連結、canonical、返回狀態。如果各版本都收錄了,但反复出現的只是同一個語言,其他語言几乎不出現,問题通常出在連結结构和自動跳轉上,而不是内容本身。

語言版本之間的關系理清楚,收錄才有讨论的基础。hreflang 只是說明關系,真正的收錄仍然取决于每個 URL 能否被稳定抓取、能否被判断為有價值的獨立頁面。