网站收录

筛选参数页的收录取舍:哪些参数组合该挡在索引之外

筛选和排序参数常常生成大量近似 URL。本文按参数类型和页面价值分批处理,先控制无效抓取,再决定是否允许索引,并给出核对收录状态的方法。

网站收录

筛选参数页的收录取舍:哪些参数组合该挡在索引之外

很多站点在列表页加上筛选、排序、分页和追踪参数后,URL 数量会快速膨胀。搜索蜘蛛会顺着这些链接不断发现新地址,但其中大部分只是同一批内容的排列组合。如果不做区分,抓取预算会被消耗,索引里也会混入大量低价值页面。

先按参数类型分四类

不要把所有带问号的 URL 都当成一类。更实用的做法是先看参数是做什么的。

  • 追踪参数:如 utm、from、ref 等,只用于统计来源,不改变页面内容。
  • 排序参数:如 sort、order,改变的是排列顺序,不是内容集合。
  • 筛选参数:如 color、size、price,可能改变结果集,也可能只缩小范围。
  • 会话或搜索参数:如 sid、q、keyword,通常跟用户会话或站内搜索有关。

判断值不值得收录的三个条件

一个参数 URL 能不能进索引,不取决于它是不是动态地址,而取决于它有没有独立价值。

  1. 有独立搜索需求:用户会主动搜索这个筛选组合,而不是只靠站内点击。
  2. 内容有实质差异:标题、描述、结果列表与基础列表页明显不同,不是简单换序。
  3. 页面稳定可访问:不会因为库存变化、会话失效而频繁变成空结果或报错。

三个条件都满足时,可以考虑保留并允许索引;只满足一个或两个时,优先考虑 canonical 或 noindex;一个都不满足时,应尽量从抓取入口就挡掉。

处理顺序:先挡抓取,再谈索引

很多问题不是“要不要收录”,而是“该不该让蜘蛛抓”。无限参数组合如果都能被抓,索引控制会变得很被动。

  • robots.txt:挡掉明确的追踪参数和会话参数,减少重复抓取。
  • 内链和站点地图:不要把追踪参数、排序参数写进内链和 sitemap。
  • canonical:筛选结果与主列表高度相似时,指向主列表页。
  • noindex:页面需要用户访问但不必进索引时使用,注意不要和 robots.txt 同时挡抓取。
  • 空结果处理:没有结果时返回合适的状态码,不要给空页面大量索引入口。

顺序上,先处理明显无价值的参数抓取,再对仍有价值的筛选页做 canonical 或 noindex。不要一上来就把所有参数页 noindex,那样可能误伤有独立需求的组合。

几个容易踩坑的地方

用 robots.txt 挡了却还想 noindex

如果 robots.txt 禁止抓取,搜索引擎看不到页面上的 noindex。两者要分开决策:不想被抓就用 robots.txt,不想被索引但允许抓取就用 noindex。

筛选页内容几乎一样

同一组商品按不同顺序排列,标题和正文没有变化,这类页面更适合 canonical 到基础列表页。若筛选后结果集明显不同,再考虑保留独立 URL。

参数顺序和大小写不统一

同一个筛选条件因为参数顺序、大小写不同生成多个 URL,会加重重复。尽量统一参数顺序和命名,服务端做规范化跳转。

核对收录状态时看什么

处理完之后,不要只看收录量涨跌。可以结合抓取日志和索引报表,观察几个点:

  • 被挡的参数是否还在被频繁抓取;
  • 允许索引的筛选页是否进入索引;
  • 主列表页的索引状态是否稳定;
  • 是否出现新的参数变体。

如果抓取量下降但有效页面收录稳定,说明控制起了作用。如果有效筛选页也掉出索引,就要检查 canonical 或 noindex 是否设置过宽。

筛选参数页没有统一答案。更稳妥的做法是按参数类型和页面价值分批处理,先控制无效抓取,再决定索引取舍,最后用抓取和索引数据回头核对。

这样比一刀切更容易兼顾用户体验和搜索蜘蛛的抓取效率。