網站收錄

协议、主机名、路径结尾:URL 規范不一致时,收錄會以哪個為准

同一頁面出現 http 與 https、带 www 與不带 www、大小寫或结尾斜杠不同的多個 URL,會把抓取和收錄信号分散。本文梳理常见變体、搜尋引擎的規范化判断,以及從 301 到内鏈、sitemap、canonical 的收敛顺序,帮助站点减少重复抓取與索引分散。

網站收錄

协议、主机名、路径结尾:URL 規范不一致时,收錄會以哪個為准

很多站点並不是没有内容,而是同一個頁面有多個地址。用戶從不同入口点進来都能打開,但搜尋引擎會看到多份几乎相同的 HTML。短時間内不一定出問题,時間久了,抓取會重复消耗,收錄也會分散到不同 URL 上。

常见的 URL 變体有哪些

先別急着改,先確認站内到底存在哪些版本。常见差异包括:

  • 协议不同:http 與 https 同时可訪問,或者 https 頁面里還鏈回 http。
  • 主机名不同:example.com 與 www.example.com 都能打開。
  • 大小寫不同:/Page 與 /page 在部分服務器上被视為两個地址。
  • 结尾斜杠不同:/category 與 /category/ 返回相同内容。
  • 預設文件名不同:/index.html 與 /。
  • 參數顺序不同:?a=1&b=2 與 ?b=2&a=1 指向同一结果。

這些變体單獨看都不大,但组合起来,一個頁面可能被拆成十几個 URL。

搜尋引擎會自己選規范頁,但信号来自你

搜尋引擎會尝试判断哪個 URL 是規范版本,依據通常包括:外鏈指向、站内連結、sitemap、canonical 标注、重定向關系以及頁面歷史。它不會只因為你寫了一個 canonical 就完全照做。如果站内連結大量指向非規范版本,或者 sitemap 里混着多個變体,判断就會變得更慢、更不确定。

規范化的核心不是“告诉搜尋引擎哪個是主頁面”,而是让站内所有信号尽量指向同一個 URL。

收敛顺序:先重定向,再统一入口

如果多個變体已经存在,處理顺序可以按下面来:

  1. 确定唯一主 URL:协议、主机名、路径形式都固定下来,寫進站点規范。
  2. 用 301 把舊變体指向主 URL:能永久跳轉就不要用 302,也不要让两個版本都返回 200。
  3. 统一站内連結:導航、面包屑、正文内鏈、分頁連結都使用主 URL,而不是相對路径或舊域名。
  4. 检查 sitemap:只放主 URL,不要把重定向 URL 或參數變体放進去。
  5. canonical 作為补充:在确實無法重定向的參數頁上标注,但不要和 301 互相矛盾。

注意,不要同时用“canonical 指向 A、301 跳到 B、内鏈又指向 C”這種组合。信号越矛盾,搜尋引擎越难快速确定規范頁。

抓取和收錄不是一回事

多個變体被抓取,不等于都會被收錄。常见情况是:搜尋引擎抓取了几個版本,最後只索引其中一個;也可能暂时分別索引,等規范化信号明确後再合並。如果變体内容有细微差异,比如價格、库存、排序不同,合並會更慢,甚至長期並存。

因此,看日誌时不要只看“有没有蜘蛛来”,還要看它抓的是哪個 URL 變体。如果大量抓取落在非規范版本上,說明内鏈或重定向還没收敛干净。

怎么核對收敛效果

  • 用 服務器日誌 观察搜尋引擎抓取的主机名、路径和參數分布。
  • 用 站点查询 看索引里是否還残留舊變体。
  • 在搜尋後台查看“規范網址”报告,確認系統選擇的規范頁是否符合预期。
  • 抽查内鏈和 sitemap,確認没有把舊 URL 重新暴露出去。

URL 規范不是一次性工作。上线新栏目、換 CDN、調整參數規則时,都可能重新产生變体。把主 URL 規則寫進開發和运营規范,比事後逐個處理更省力。