站点运营

站点运营:參數 URL 與追踪參數自查,別让同一篇内容生出多個地址

带追踪參數的地址、篩選组合、會话 ID,都會让同一個頁面出現多個可訪問的 URL。本文整理一份參數自查清單,從日誌、canonical、站点地图、内鏈几個角度,說明哪些參數可以收敛、哪些需要保留,以及處理之後如何回看日誌驗證效果。

站点运营

站点运营:參數 URL 與追踪參數自查,別让同一篇内容生出多個地址

同一篇文章,從列表頁、搜尋结果、外部分享、广告落地頁几個入口点進来,地址栏里可能各带一長串參數。對訪客来说没什么区別,對搜尋引擎来说却可能是好几個不同的 URL。參數本身不是問题,問题是当參數無限组合、每個组合都能正常打開頁面时,抓取预算被切碎,頁面信号也被分散。

先盘清楚站点里到底有哪些參數

把最近一段時間日誌里出現過的带參數地址拉出来看一遍,通常能归成几類:

  • 追踪類:utm_source、utm_medium、gclid、fbclid、spm 這類,来源是投放和分享,頁面内容完全一致。
  • 篩選與排序類:價格区間、品牌、排序方式、每頁條數,會改變列表内容,但组合數量可能非常庞大。
  • 會话類:sessionid、sid、token,一般由程序自動附加,同一訪客不同時間訪問都可能不一样。
  • 分頁與定位類:page、p、from 等,用于翻頁或定位到某個位置。

一份可以照着做的自查清單

  1. 随手打開一個内頁,複製地址,看有没有自動多出參數。
  2. 给同一個地址补上 utm_source=test,看頁面是否返回 200 且正文與規范地址一致。
  3. 检查 canonical 标簽指向的是不带參數的規范地址,還是目前這個带參數的地址。
  4. 翻一遍站点地图,確認里面只出現規范地址,没有带參數的版本。
  5. 抽查内部連結,看是否混用了带參數與不带參數两種寫法。
  6. 检查篩選頁、排序頁目前是否允许抓取,是否需要收敛。
  7. 確認跳轉之後落到的地址是規范地址,而不是另一條带參數的地址。

不同類型的參數,處理方式不一样

追踪參數

追踪參數對頁面内容没有影响,最省事的做法是在服務器或 CDN 层做一次重定向,把带追踪參數的請求指向不带參數的地址;或者在頁面 head 里輸出 canonical 指向規范地址。两者選其一即可,注意不要同时给出互相矛盾的信号。

篩選與排序參數

先判断這些组合有没有真實搜尋需求。有稳定搜尋量的篩選组合,可以留少量给搜尋引擎抓取,比如按品牌或按品類。纯粹的排序、每頁條數這類變化,通常不值得單獨建索引,可以用 robots.txt 限制抓取,或者在頁面上加 noindex。動手屏蔽之前先看日誌,別把本来有流量的頁面一起挡掉。

會话參數

會话 ID 最好不出現在 URL 里,改用 Cookie 传递。如果确實已经存在,可以在 robots.txt 里做規則限制,也可以让程序在跳轉时直接去掉這類參數。

處理完,還要回日誌里看一眼

改完之後隔一段時間再看日誌:带參數的請求占比有没有下降,規范地址的抓取是否增加,服務器上重复 URL 的處理压力有没有變化。如果只是加了 canonical,而内鏈里仍然大量使用带參數的地址,效果會打折扣,因為蜘蛛大部分時間還是顺着内鏈走。

參數治理不是一次性動作。投放連結、分享组件、分頁插件升級时,都可能重新带出舊參數,定期抽查比一次性大掃除更管用。