網站收錄

带參數的 URL 该不该收錄:篩選、排序和追踪參數的處理思路

用戶点一次篩選、換一次排序、從广告後台带一個追踪參數進来,地址栏就多出一串字符,蜘蛛同样會爬到這些地址。這篇文章把參數分成追踪、排序、篩選三類,分別给出归一化、屏蔽和保留收錄的處理思路,並說明怎么驗證處理效果。

網站收錄

带參數的 URL 该不该收錄:篩選、排序和追踪參數的處理思路

做站点运营时,參數 URL 往往是被忽略的一块。用戶在站内点一次篩選、換一次排序,或者從广告後台带一個 utm 參數進来,浏览器地址栏就多了一串東西。這些地址蜘蛛也會爬到,于是問题来了:它們该不该進索引?

參數一般從哪来

常见的參數有三類,處理方式完全不同:

  • 追踪參數:utm_source、gclid、fbclid 之類。它們改變的是流量来源,不改變頁面内容。
  • 排序參數:sort=price、order=desc。同一批内容換個排列顺序。
  • 篩選參數:color=red、size=40、price_min=100。會真正筛出一部分内容,頁面主体确實不同。

前两類通常只是同一個頁面的另一種打開方式,第三類可能對應真實的用戶需求。判断的依據不是參數本身,而是這個 URL 上的内容是否獨立、是否有搜尋價值

參數泛滥會带来什么

如果放任不管,通常會出現几種情况:同一批内容以几十個地址存在,形成近似重复;蜘蛛把抓取額度花在參數组合上,真正需要更新的頁面反而来得少;索引里出現大量只有细微差別的地址。這些問题不會立刻表現為流量下跌,但會慢慢让收錄结构變得难以判断。

分類處理的思路

追踪參數:尽量统一到干净 URL

带 utm 的地址指向的頁面和干净地址完全一样,没有理由让它單獨進索引。常见做法是在頁面上把 canonical 指向不带追踪參數的版本,站内連結和分享按钮也统一輸出干净地址。需要注意,canonical 是建议不是命令,如果差异明顯,最好同时保證頁面上有指向干净版本的連結。

排序參數:一般不需要獨立收錄

用戶搜的是内容,不是排序方式。這類參數頁可以保留可訪問性,但不作為獨立的收錄目标。可以让它 canonical 到預設排序的地址,或者在 robots.txt 里做限制。要注意的是,robots.txt 只能阻止抓取,不能阻止已经進入索引的地址被展示,所以對已经收錄的排序頁,更稳妥的是先让它可抓取、能讀到 noindex,再逐步收敛。

篩選參數:先看有没有搜尋需求

篩選參數最需要單獨判断。像「某品牌 40 碼 跑鞋」這類组合,确實可能有搜尋量,值得保留一部分可收錄的组合;而颜色加尺碼加價格区間的排列组合可能有几千個,绝大多數無人搜。可行的做法是只保留有搜尋價值的主力组合,其余不主動暴露連結,也不放 sitemap。

几個可落地的做法

  1. 先統計參數清單。從服務器日誌或搜尋後台的抓取记錄里,把带參數的地址按參數名归類,看哪些是被大量抓取的。
  2. 给每個參數定一個策略:归一化、不索引,還是保留收錄。
  3. 調整站内連結輸出,避免在列表頁、面包屑里生成大量參數連結。
  4. 检查 sitemap,只保留确定要收錄的地址,不要把所有參數组合都提交進去。
  5. 把被屏蔽的參數頁從站内可点击路径中移除,减少蜘蛛反复發現它們的机會。

怎么驗證處理效果

處理之後,不要只看一两天的資料。可以观察一段時間内蜘蛛對參數地址的抓取次數是否下降,索引中带參數的地址是否在减少。同时確認目标頁面的抓取没有受到影响——如果收缩參數頁導致主力頁面也来得少了,說明收敛做得過急。

參數本身没有對错,問题在于是否每個组合都值得占用一個索引位置。判断的标准始终是内容差异和搜尋需求,而不是參數長得像不像。

如果站点參數体系很复杂,可以從抓取量最大的几個參數入手,先處理最明顯重复的那一批,观察一段時間再决定要不要繼續收紧。