網站收錄

带參數的 URL 被收錄了:篩選、排序和跟踪參數怎么收敛

带參數的 URL 被大量收錄,往往源于站内連結和 sitemap 自己带出的參數版本。本文按跟踪參數、排序视图參數、篩選參數三類分別處理,說明清理連結、使用 canonical、慎用 robots.txt 屏蔽的先後顺序,並给出一份可直接执行的自查清單。

網站收錄

带參數的 URL 被收錄了:篩選、排序和跟踪參數怎么收敛

打開索引报告,發現收錄里混着一堆带 ? 的地址,多數情况下不是搜尋引擎擅自抓的,而是站点自己把這些連結递到了蜘蛛面前:商品篩選、排序切換、分享按钮带的 utm、站内搜尋结果頁,以及被自動生成的 sitemap 里带出的參數版本。

參數 URL 本身不是错誤,問题在于它們通常指向與主版本高度相似的内容,一旦成規模被收錄,會占掉索引里的位置,也會分散内鏈權重和抓取額度。

先分清楚是哪一類參數

  • 跟踪參數:utm_source、gclid、from、spm 之類。它們不改變頁面内容,只记錄来源,正常情况下不應该出現在任何可抓取連結里。
  • 排序與视图參數:sort=price、view=list、page=2。内容基本一致,只是排列或展示方式不同,多數不需要單獨收錄。
  • 篩選參數:color=red、size=40。這類可能真的组合出有搜尋需求的新頁面,但也很容易生成成千上萬個低质组合。

先改連結,再改标簽

很多人的第一反應是给參數頁加 noindex。但如果頁面上仍然有大量指向參數版本的内部連結,蜘蛛還是會持續發現並抓取它們,只是抓完不收錄,白白消耗抓取額度。更省事的顺序是:

  1. 把跟踪參數從站内所有連結中移除,分享連結在跳轉时清理。
  2. 篩選、排序、视图狀態尽量用前端狀態儲存,URL 保持不變;如果做不到,就让參數顺序固定、預設值不出現在 URL 里。
  3. 確認 sitemap 只包含規范版本,不带任何跟踪參數。

canonical 的用法與邊界

對于确實需要可訪問、但不需要單獨收錄的參數頁,常见做法是让參數頁自身指向無參數的規范版本,規范版本保持自指。有两点要注意:

  • canonical 是建议而非指令。如果两個版本内容差异明顯,或者站内大量連結指向參數版本,搜尋引擎可能選擇保留參數版本。
  • 用 robots.txt 的 Disallow 屏蔽參數路径,會阻止蜘蛛讀取頁面里的 canonical 和 noindex,反而可能让 URL 以無摘要的形式留在索引里。要屏蔽抓取,先確認這些 URL 没有被外部連結指向。

能獨立成頁的篩選组合,值得留下

不是所有參數頁都该收敛。如果某個篩選组合有稳定的搜尋需求,頁面上也有獨立的标题、描述和足够内容,把它做成路径形式的獨立頁面(例如 /red-dress/ 而不是 ?color=red)會更清晰。判断标准很直接:這個頁面如果單獨存在,能不能给用戶一個明确用途。

處理參數 URL 的核心不是让它們消失,而是决定哪些版本值得被索引,然後让連結、canonical、sitemap 三處说法保持一致。

自查清單

  • 在索引报告里篩選带 ? 的 URL,看占比和近期增長趋势。
  • 抽查几個參數頁:内容與規范版本差异有多大,canonical 是否指向自己。
  • 看服務器日誌,參數頁消耗了多少抓取次數,是否挤占了重要頁面的抓取。
  • 检查搜尋框、篩選组件、分享按钮生成的連結是否带參數。

參數收敛通常需要一到两轮抓取周期才能看到變化,观察时以抓取比例和索引數量两條曲线為准,不要只盯着某一天的數字下结论。