網站收錄

同一頁面被收錄成好几條:跟踪參數和篩選參數的 URL 该怎么收敛

一個頁面在索引里出現多個版本,通常是站内放出了带參數的連結。本文梳理參數 URL 的常见来源,区分内容型、排序型、追踪型參數的處理優先級,並给出從連結源头改造、canonical、robots.txt、站点地图等几種收敛做法,以及改完後如何自查。

網站收錄

同一頁面被收錄成好几條:跟踪參數和篩選參數的 URL 该怎么收敛

同一篇文章,在搜尋结果里出現两三條不同連結,点進去内容一样,只是網址後面多了一串問号參數——這種情况多半不是搜尋引擎弄错了,而是站点自己把同一個頁面拆成了几條不同的 URL,每條都被蜘蛛單獨抓取過。索引條目是按 URL 建立的,只要地址不同,對搜尋引擎来说就是两個位置,内容是否重复要等抓取和比對之後才谈得上判断。

參數 URL 是怎么被蜘蛛發現的

蜘蛛不會凭空造出带參數的地址,它抓到什么就顺着什么往下走。常见的来源有這么几處:

  • 站内連結本身就带參數。導航、列表排序連結、分享按钮、跳轉連結没有做處理,直接輸出带追踪串的地址。
  • 站外推廣連結。投放、社交媒体、邮件里的連結大多带 utm 參數,被複製到论坛、评论区之後又被蜘蛛抓到。
  • 站内搜尋、篩選、排序产生的地址。用戶点一次排序就生成一條新 URL,如果這些頁面能被爬到,就會成批進入待抓取队列。
  • 分頁參數拼接不当,例如同一套翻頁同时出現 page 和 p 两種寫法。

這些地址大多内容相同,只是顺序或展示略有差別。它們本身不一定有害,但數量一多,會占用抓取资源,也让站点的收錄數字被稀释——看起来涨了,真正獨立的頁面並没有增加。

先分清哪些參數该留、哪些该收

  • 内容型參數:會改變頁面主体内容的,比如按颜色、規格篩選出的结果頁。這類頁面如果确實有人搜尋,可以保留,但标题、描述和正文最好能区分開。
  • 排序型參數:按價格、销量、時間排序。多數情况下排序後的内容與預設列表高度重合,建议同一组只留一個可抓取版本。
  • 追踪型參數:utm、from、ref 之類,只用于統計来源,不影响内容,属于優先收敛的對象。
  • 會话與随机參數:带 session id、時間戳的地址,每次訪問都不同,應尽量避免出現在能爬到的連結里。

收敛參數的几種做法

1. 從連結源头改

最省事也最有效的办法,是让站内輸出的連結本身就不带多余參數。分享按钮、跳轉連結、列表排序,都可以在服務端或前端處理成干净地址,參數只交给統計脚本,不寫進連結。

2. 用 canonical 指回主版本

對于已经产生、短期無法刪除的參數地址,可以在頁面上用 canonical 指向不带參數的主地址。需要注意 canonical 是提示而非强制指令,最好配合内鏈改造一起做,否則它只是表達了“我推荐哪個版本”,處理速度取决于搜尋引擎自己的判断。

3. 用 robots.txt 挡住不值得抓的路径

纯粹的排序、追踪參數頁面,如果站内不需要它們被搜到,可以在 robots.txt 中屏蔽對應的路径模式。要留意屏蔽的是抓取而不是收錄,已经進過索引的地址可能在較長時間里仍然可见,需要配合其他處理一起推進。

4. 處理站内搜尋和篩選頁

站内搜尋结果頁通常不建议放開抓取,一来内容随關鍵詞變化、质量不稳定,二来容易生成大量近似頁面。篩選頁則可以保留有價值的组合,把無意义的單條件、空结果頁面挡在外面。

5. 站点地图只提交主版本

站点地图里放干净的規范地址,不要混入带統計參數的連結。它不是收錄開關,但能减少蜘蛛從這份文件里拿到多余地址的机會。

改完之後怎么確認

  • 抽几條典型的參數地址,看看現在返回的是不是正常頁面、canonical 指向哪里。
  • 观察抓取日誌,看带參數的請求占比是否在下降。
  • 用站内搜尋和篩選各点几次,检查生成的地址會不會被寫進可爬連結。
  • 收錄數字短期可能下降,這往往是把重复版本剔出去的结果,不必急着往回加。
參數本身不是错誤,問题在于同一個内容被拆成多條地址之後,站点把有限的處理资源摊薄了。收敛的目标不是让收錄數量變多,而是让每個被收錄的地址,都對應一個真正獨立、值得存在的頁面。