列表页、商品页只要加上筛选、排序、分页、来源标记,同一批内容就可能衍生出几十甚至上百个地址。蜘蛛抓到这些地址,会占用本来就有限的抓取量,也容易让同一份内容以多个地址同时存在。哪些参数值得放行,哪些该收口,取决于参数是否真的改变了页面内容,而不是取决于参数好不好看。
先把参数分成三类
- 改变内容的参数:筛选条件、价格区间、品牌、页码。参数不同,页面上列出的条目确实不同。
- 不改变内容的参数:排序方式、每页数量、展示样式、utm 之类的追踪标记、来源渠道。
- 混合型参数:同一个参数有时改变内容、有时不改变,比如地区、语言、货币切换。这类需要单独判断,不能一刀切。
分类的意义在于,处理方式完全不同。改变内容的地址可能值得被索引,不改变内容的地址多数只适合收口到一个规范地址。
判断一个参数地址值不值得进索引
- 参数变化后,页面主体内容是否有实质差异,而不是只有顺序或文案微调。
- 这个组合是否存在真实的搜索需求,用户会不会主动搜它。
- 站内是否有稳定的入口指向它,而不是只能靠外部链接发现。
- 是否存在可替代的规范地址,例如对应分类页或聚合页。
四条都不满足时,通常没有必要让它进入索引。四条里有明显满足的,再考虑保留。
处理顺序:先规范化,再考虑拦截
canonical 适合什么情况
参数只影响排序或展示、主体内容一致时,用 canonical 指向无参数版本,是成本最低的做法。它保留了对用户的可用性,也把信号集中到规范地址上。要注意的是,canonical 是建议而非命令,页面之间的内容如果差异过大,被采纳的概率会下降。
robots.txt 屏蔽参数的取舍
屏蔽能明显省下抓取量,但被屏蔽的地址不会被抓取,页面上的链接也不会被继续跟踪。如果这些参数地址恰好是站内通往深层内容的重要路径,屏蔽等于把发现路径也一起切断。写规则时要尽量精确,避免通配符把正常地址一起拦掉。
屏蔽是“不让抓”,noindex 是“抓了但别收录”。两者的作用和代价不同,不能互相替代,也不能同时乱用。
站点地图与内链只放规范地址
站点地图里提交的应当是规范 URL,而不是筛选组合。内链同理,筛选项尽量通过统一入口收口,避免每一个参数组合都变成新的站内入口。入口一旦分散,抓取量就会被摊薄到大量低价值地址上。
几个常见误区
- 一次性屏蔽全部参数,结果分页也被拦掉,深层内容变得难以被发现。
- 用 noindex 处理海量参数页,索引干净了,但抓取量被这些地址吃掉。
- 追踪参数到处复制粘贴,链接每发一次就多一个地址。
- 只改 canonical,却没有清理站内指向参数地址的链接。
上线之后核对这几项
- 服务器日志里,参数型地址占抓取总量的比例是否在下降。
- 索引中同一内容存在多个地址的情况是否减少。
- 规范地址上的 canonical 是否被采纳,指向是否与预期一致。
- 站点地图是否只包含规范地址。
参数管理不是一次性动作。每次上线新的筛选、排序或推广功能,都会带来新的地址形态,需要重新按上面的顺序判断一遍:先看内容是否变化,再决定放行、规范化还是收口。