站内搜尋结果頁、篩選頁、排序頁被索引,是不少站点索引量虚高的常见来源。這類 URL 由同一套模板批量生成,參數组合多,一旦被大量收錄,既會让站内連結分散到低價值地址上,也會让索引覆盖率的資料變得很难解讀。動手處理之前,先要判断哪些该留、哪些该去,而不是一律屏蔽。
第一步:把參數頁按用途分成三類
- 有獨立搜尋需求的頁面:比如品牌词、型号词、热门组合词的站内结果頁,本身可能承接真實搜尋流量,值得單獨评估。
- 站内導航性质的頁面:列表頁的排序方式、每頁條數、视图切換等,對用戶價值低,通常不该出現在索引里。
- 纯技術參數:跟踪參數、會话标识、回传參數等,對内容没有任何影响,属于典型的重复地址。
分類之後再谈處理手段。否則很容易把本来有流量的篩選頁一起 noindex,丢掉已有的訪問来源。
第二步:確認這些 URL 到底有没有被收錄
- 用站点查询做粗略观察,它样本偏差大,只当參考,不作為结论。
- 用 URL 检查類工具逐條查看几個有代表性的地址,確認目前狀態與規范的收錄归属。
- 從服務器日誌里筛出带參數的請求,看蜘蛛的抓取频次和返回碼,判断它是否在反复發現這些地址。
- 直接在结果頁里搜几個典型參數组合,看是否真的出現。
三類資料交叉看,比只盯着索引量總數有用得多。總量變化往往同时受新頁面發布、重复地址涌入、低质頁清理等多重因素影响。
第三步:按頁面類型選擇處理方式
不该被收錄的
- 頁面級 noindex,让蜘蛛讀到並據此移除。
- canonical 指向規范列表頁,用于内容高度重合的排序參數。
- 内鏈中去掉這些參數组合,减少新的發現路径。
- 站点地图里不包含這類地址。
需要留意 robots.txt 與 noindex 的先後關系:一旦用 robots.txt 屏蔽了抓取,頁面上的 noindex 就無法被讀到,已收錄的地址反而可能長期留在索引里。让已收錄頁面登出的常規做法,是先允许抓取並给出 noindex,確認移除之後再考虑屏蔽抓取。
值得保留的
保留的搜尋頁或篩選頁,應有稳定的标题、可被索引的實质内容,以及相對唯一的 URL 结构。要避免同一個结果集由多组參數生成多個可索引地址,否則又回到重复地址的老問题。
分頁與排序
排序類參數通常只是把同一批内容換個顺序,與預設列表高度重合,一般归並到預設列表頁。分頁則是不同内容的集合,若确實不希望收錄,可用 noindex,follow 的方式保留連結传递,让蜘蛛仍能顺着走到更深的頁面。
第四步:改動之後的核對項
這類改動不會立刻反映出来,通常需要几周時間。可以按下面几項跟踪:
- 索引量的變化幅度,以及减少的是不是那批參數地址。
- 服務器日誌里參數 URL 的抓取频次是否下降,抓取是否轉移到目标頁面。
- 保留下来的搜尋頁與典型列表頁的收錄狀態是否稳定。
不要因為短期索引量下降就急着回退改動。先確認下降的究竟是低價值參數頁,還是被誤伤的正常頁面,再做决定。
常见誤操作
- 用 robots.txt 全站屏蔽所有带問号的地址,连正常分頁一起挡掉。
- 只给參數頁加了 canonical,却没有收敛站内連結,蜘蛛仍會不断發現並抓取。
- 把有真實搜尋需求的篩選頁也一起 noindex,等于主動放弃已有流量。
- 參數頁與主列表頁内容几乎一样,却各自保留可索引狀態,形成站内自我重复。
整体思路並不复杂:先把參數頁按用途分類,再决定去留,最後让 robots、noindex、canonical、内鏈和站点地图几個信号指向同一個结论。信号一致,蜘蛛和索引才容易给出符合预期的结果。