分享按钮、广告投放連結、邮件模板、站内搜尋跳轉,都會在不经意間给同一個頁面生成好几個不同的 URL。搜尋引擎發現 URL 的渠道本来就很杂,外鏈、站内連結、提交接口、日誌残留都算,這些带參數的版本一旦被大量發現,就會被当成獨立頁面分別排队抓取。
問题通常不在某一條带參連結,而在于它出現的量級和持續性。一個頁面几十個入口 URL,累积到全站就是成千上萬條近似地址,抓取资源和收錄信号都會被摊薄。
同一頁面為什么會出現多個入口 URL
先把手头的来源列清楚,比急着去屏蔽更有效。常见的几類:
- 站外分享與广告:utm_source、utm_medium、utm_campaign 這類投放标记。
- 站内跳轉:搜尋頁、篩選頁、導航中的跳轉連結把參數带進了詳情頁。
- 程序自動生成:會话 ID、跟踪 ID、時間戳,每次訪問都可能不一样。
- 歷史與配置原因:www 與非 www、http 與 https、尾斜杠的有無、大小寫不统一。
- 短鏈和第三方中轉:点击後才 302 到真實地址,中轉地址本身也可能被收錄。
這些来源里,其實只有一部分是真正需要處理的。判断的核心标准是:去掉參數後,頁面主体内容是否完全一致。
這些入口 URL 带来的實际影响
- 抓取资源被花在内容几乎相同的頁面上,真正需要更新的頁面反而等得更久。
- 内鏈權重和外部連結信号被拆到多個地址上,主版本的抓取频次也容易被稀释。
- 日誌和索引資料變复杂,後面判断收錄情况时更难得出可靠结论。
- 一旦改版或調整结构,需要處理的重定向數量成倍增加。
不是所有參數都要封杀。排序、分頁、篩選參數往往對應真實的差异化内容,把它們当成纯垃圾參數處理,可能反而让有價值的頁面登出抓取范围。
先分類,再决定怎么處置
- 從抓取日誌和索引資料里筛出带參數的 URL,按參數名归類,记錄出現频次與是否被收錄。
- 手動打開去掉參數後的版本,逐項對比:價格、库存、排序结果、分頁内容是否發生變化。
- 按结果分三類:完全一致的装饰性參數、内容确實不同的内容型參數、部分场景才生效的混合型參數。
装饰性參數适合收敛;内容型參數應当保留可抓取,並各自指向自己的規范地址;混合型參數可以先列白名單,只放開确實影响内容的取值。
常用的收敛做法
從連結輸出端做起
站内所有連結尽量輸出規范版本,包括導航、面包屑、相關推荐、RSS 和分享组件。對外投放連結最好先经過一层跳轉再落到規范地址,不要直接把带參 URL 暴露在頁面上。會话 ID 這類由程序自動附加的參數,能從源头關掉就不要靠事後屏蔽。
抓取层面的控制
robots.txt 里可以用通配符限制特定參數组合,但前提是已经確認该參數不影响頁面内容。平台的 URL 參數處理工具可以指定只抓取規范版本,比逐條寫規則更好维護。改動前建议先小范围观察日誌里對應 URL 的抓取量變化。
頁面层面的信号
带装饰性參數的頁面,canonical 指向無參數版本。而分頁、排序這類内容确實不同的頁面,canonical 應指向自身,不要统一指向第一頁或主列表,否則等于主動告诉搜尋引擎這些頁面可以合並。
站点地图與内鏈
sitemap 里只放規范 URL;内鏈锚文本指向的也應是規范版本。這两處是搜尋引擎重新校正收錄地址时比較直接的參考。
處理過程中容易踩的几個点
- 不要一次性屏蔽全部參數,先分批次观察,避免誤伤仍在产生流量的頁面。
- 已经被收錄的带參 URL 不必强行 404,通過 canonical 和 sitemap 逐步收敛通常更平稳。
- 注意參數是否被平台用于区分内容,例如多語言或货幣切換,這類场景要單獨判断。
- 定期回看是否出現新的參數来源,新渠道、新分享组件都可能引入新的标记。
怎么判断處理有没有生效
可以盯三個方向:日誌里規范 URL 的抓取占比是否上升、带參 URL 是否下降;索引資料中带參地址的比例是否减少;抽查具体頁面的收錄地址是否已回到規范版本。這類變化不會在一两天内顯現,按周看趋势比按天看波動更有意义。
參數收敛更适合当成一項長期约定:在新連結产出环节就定好規范,比攒到几萬條再去清理省力得多。