站点运营

站点运营:筛选与排序参数泛滥,分面导航的URL该怎么收敛

筛选、排序、分页参数很容易让URL数量失控,蜘蛛把有限抓取配额耗在低价值组合页上。本文梳理分面导航的URL评估方法,以及排序、筛选、canonical、robots.txt 与内链入口的具体处理思路。

站点运营

站点运营:筛选与排序参数泛滥,分面导航的URL该怎么收敛

做电商或者内容量较大的站点时,筛选、排序、翻页几乎都是标配。点一下“价格从低到高”,URL后面就多一个参数;再勾两个颜色、一个尺寸,链接就变成一长串。用户用着方便,但对搜索蜘蛛来说,这些链接意味着理论上无穷无尽的URL。抓取配额是有限的,蜘蛛把时间花在这类组合页上,真正希望被收录的栏目页和详情页反而排不上队。

先算一笔账:组合是怎么膨胀的

假设一个类目下有 6 种颜色、5 个尺寸、4 个价格区间、3 种排序方式,再加上分页。理论上可组合出的URL数量是这些维度相乘,再乘上分页数,轻松到几千甚至上万。而其中真正有人搜索、有人看的,可能不到几十个。多出来的那部分,基本就是纯消耗抓取资源的组合页。

把URL分成三类来对待

  • 值得收录的:有明确搜索需求、内容相对稳定的筛选组合,比如某个商品词与某个属性词的固定搭配。
  • 可以不收录但允许抓取的:纯排序、纯视图切换、临时筛选组合。这类页面让用户能用,但不必进索引。
  • 没必要让蜘蛛进来的:会话ID、追踪参数、按点击生成的排序、站内搜索结果页等。

几种常见做法与各自的边界

  1. 排序参数不生成独立URL。排序用前端交互或表单提交完成,地址栏不变化,链接也就不会扩散。代价是分享链接时排序状态会丢,多数站点可以接受。
  2. 筛选组合不主动给链接。筛选结果页可以被访问,但不必在每个列表页里都输出成百上千个筛选链接。改为折叠、按需加载,或者只输出该维度下最有价值的几个入口。
  3. canonical 指向基础类目页。对排序、视图切换、不重要的筛选组合,可以让它们 canonical 到无参数的类目主URL。注意是“指向别人”,不要错误地自引用,也不要让两个页面互相指。
  4. robots.txt 只用来挡,别和 noindex 叠加。如果某类URL被 robots.txt 屏蔽,蜘蛛抓不到页面内容,也就读不到页面里的 noindex。想不进索引就用 noindex,想省抓取就屏蔽,二选一即可。
  5. 分页给明确的上一页、下一页链接。早期搜索引擎支持的 rel next/prev 已不再作为收录信号,做成普通的可点链接更稳,同时避免“最后一页”直接跳进无限滚动。
  6. 观察日志再决定。服务器日志里蜘蛛抓的是哪些参数组合、频率多高,比凭空猜测可靠。发现大量带同一参数的抓取,就针对那个参数处理。

入口设计比事后清理更重要

很多站点的问题不在筛选功能本身,而在于把筛选链接铺在了蜘蛛最容易爬到的地方:首页、类目头部、页脚。这些位置的链接被发现概率高,一旦铺开,等于主动邀请蜘蛛去爬组合页。把重要筛选入口放在类目页中部,用更少、更精准的维度,通常更省事。

一个简单的判断标准:如果这个URL既没有自然搜索需求,也没有外部链接指向它,那它多半不该出现在导航和批量内链里。

上线前可以过一遍的检查

  • 类目页默认状态是否只有一个规范URL,没有多余参数;
  • 排序、视图切换是否产生了可被独立索引的URL;
  • 筛选链接是否被批量输出到全站公共区域;
  • canonical 是否指向了正确目标,且不存在互相指向;
  • 被 robots.txt 屏蔽的参数是否同时又写了 noindex;
  • 日志中是否存在同一参数的反复抓取。

分面导航不是要一刀切掉,而是把有限的可抓取URL留给真正有价值的那部分。收敛数量、明确入口、按日志调整,通常比反复提交站点地图更实在。改动之后给搜索引擎一段时间观察,效果以实际抓取和收录数据为准。