很多站点在商品列表、文章归档或搜索结果页里,会通过 URL 参数实现筛选、排序和跟踪。颜色、价格区间、排序方式、来源渠道,每选一次就生成一个新地址。这些地址积累起来,可能比正式内容页还多。搜索引擎收录一部分之后,站内会出现大量内容相近的页面,抓取配额也被分散。要不要让这些参数 URL 被收录,不能一刀切,得看它有没有独立价值。
先分清参数类型
参数 URL 大致可以分成几类,处理方式不同:
- 筛选参数:如颜色、尺寸、品牌、价格区间。有些筛选组合有明确搜索需求,比如“某品牌 连衣裙”;大部分冷门组合只是给站内用户用的。
- 排序参数:如按价格、销量、上架时间排序。同一批商品只是顺序不同,页面主体内容几乎一样,通常没有独立收录价值。
- 跟踪参数:如 utm、ref、from 等。它们不影响页面内容,但会生成不同 URL,最好在服务器或前端统一处理,不让蜘蛛抓到。
- 会话或临时参数:如 sessionid、timestamp。这类参数会无限变化,容易把蜘蛛带入无意义的地址,一般直接屏蔽。
- 分页参数:如 page=2。分页本身有导航价值,但深层分页是否收录,要看列表页内容和用户需求。
常见收录问题
参数 URL 如果放任不管,最常见的影响有三个:
- 重复内容:同一批商品不同排序或筛选,标题和描述可能只差几个词,搜索引擎需要花时间判断哪个是主版本。
- 索引膨胀:大量低质参数页被收录后,索引里充斥着相似地址,真正重要的页面反而被稀释。
- 抓取浪费:蜘蛛顺着参数组合爬取,配额被消耗在无搜索需求的页面上,新内容或更新内容抓取变慢。
这些问题不一定立刻显现,但站点规模变大后,排查收录波动时会发现参数 URL 占比很高。
处理参数 URL 的几种做法
没有一种方法能解决所有情况,通常组合使用。
1. 用 canonical 指向规范版本
如果参数页内容与某个主页面高度重合,可以在参数页上放 canonical,指向不带参数的版本。注意 canonical 是建议,不是强制,搜索引擎仍可能选择自己认为合适的版本。所以不要指望加了 canonical 就一定能收口。
2. 用 robots.txt 屏蔽无价值参数
对于跟踪参数、会话 ID 这类不需要收录的地址,可以在 robots.txt 里用通配符屏蔽,例如屏蔽带 utm_ 或 sessionid 的路径。屏蔽后蜘蛛不会抓取,但已经收录的页面不会因此移除,需要配合其他方式。
3. 对低质参数页使用 noindex
如果某个参数页内容单薄、没有搜索需求,可以在页面上返回 noindex。但要注意,noindex 页面仍会被抓取,只是不进入索引。如果大量页面用 noindex,抓取配额依然被消耗。
4. 控制内链
蜘蛛主要通过内链发现地址。不要把所有筛选组合都做成可点击链接,尤其是组合数量巨大的情况。只把有独立价值的筛选页放进导航或列表页,其他组合让用户通过交互触发,但不生成可抓取的链接。
5. 分页参数单独考虑
分页 URL 不建议直接屏蔽。列表页的后续页面可能包含独立内容,也承担着把蜘蛛引向深层详情页的作用。如果分页内容重复度高,可以在分页上保留自引用 canonical,而不是指向第一页。
判断一个参数页有没有独立价值
可以问几个问题:
- 用户会不会在搜索引擎里搜这个筛选组合?比如“500 元以下 跑鞋”可能有,而“价格从低到高 第 3 页”通常没有。
- 这个页面是否有独立文案、独立介绍,还是只是商品列表换了个顺序?
- 站内搜索日志里,有没有人用类似词找到这个页面?
- 如果去掉参数,内容是否明显不同?
如果答案偏向“没有独立需求”,就不必让搜索引擎收录。如果某个筛选页有稳定搜索量,可以把它做成静态化或规范化的独立页面,而不是依赖参数。
一个可执行的检查顺序
- 从服务器日志或 Search Console 的抓取统计里,找出被频繁抓取的参数 URL 类型。
- 按参数类型分组:跟踪、排序、筛选、分页、会话。
- 对每组抽样看页面内容,判断与主版本的重合度。
- 跟踪和会话参数优先屏蔽;排序参数用 canonical 或 noindex;筛选参数按搜索需求保留少数。
- 检查站内链接,避免所有参数组合都可爬取。
- 处理后在日志里观察一段时间,看抓取分布是否变化。
参数 URL 的收录问题,核心不是“全部屏蔽”或“全部保留”,而是把有限抓取配额留给有独立价值的页面。定期审查比一次性设置更有效。
最后提醒一点:不同搜索引擎对参数的处理能力不同,规则也可能调整。做决定前,先看自己站点的实际抓取和收录数据,再选择收口方式。