有效地址集合不是“所有能返回200的URL”,而是“你愿意让搜索引擎抓取、并允许其参与链接权重与收录判断的那批规范化地址”。当筛选、排序、分页、追踪参数自由组合时,先冻结参数维度,再为每个维度规定取值上限与规范形式,剩下的组合一律视为无效地址。这样做的直接结果是:内链只指向规范形式,外链即使带参数进入,也能被规则收敛到同一集合,而不是无限扩散。
拿你手头的一份URL清单或一张页面模板,逐列标出参数名,并只回答三个问题:这个参数是否改变主内容、是否只改变展示顺序、是否只用于追踪。改变主内容的参数(如商品筛选出不同品类)可以保留;只改排序或视图的参数(如sort=、view=)应统一到一个默认值;追踪参数(如utm_、会话ID)不应进入有效集合。
动作与结果:把每个参数归入“保留、折叠、丢弃”三类后,有效地址集合的规模会从“参数取值相乘”变成“保留维度取值相加”。下一步判断规范形式时,只需处理保留维度,折叠和丢弃维度不再产生新地址。
集合边界要写成可执行规则,而不是感觉。常见做法是:对保留维度规定允许值域,对折叠维度强制默认值,对丢弃维度在服务端或规范标签中移除。例如假设一个列表页有color、size、page、sort四个参数,若只保留color和page,则size与sort无论取什么值,都应收敛到不带这两个参数的地址。
这里需要区分内链和外链的处理顺序:内链由你控制,应直接输出规范形式;外链由他人控制,只能靠规范化规则收敛。若外链大量指向带追踪参数的地址,先检查这些地址是否返回200以及是否带规范标签,再决定是保留抓取还是直接丢弃。抓取限制不等于可靠的索引移除,robots.txt只能阻止抓取,不能保证已收录地址从索引消失。
定义完成后,用抽样验证而不是全量验证。从每个保留维度各取一个值,再叠加两个折叠参数和一个追踪参数,构造一批测试地址,观察它们是否都指向同一规范形式。若同一内容出现多个可访问地址,说明集合边界仍有漏洞。
可区分原因的证据包括:
站点地图不保证收录,它只能作为发现入口。把有效地址集合写入站点地图,不等于这些地址一定被索引;反过来,站点地图里出现无效地址,会削弱集合边界的可信度。
内链是集合的“输出端”。在模板、导航、分页和正文推荐位中,只允许生成规范形式。若内链仍输出折叠参数,搜索引擎会持续发现新组合,集合边界形同虚设。动作上,先改模板中的链接生成逻辑,再抽查渲染后的HTML,确认href不含丢弃参数。
外链是集合的“输入端”。你无法要求外部站点改链,但可以通过规范化规则、服务端重定向或规范标签,把带参数的外链收敛到有效集合。若外链指向的地址本身不属于有效集合,且没有保留价值,可以返回410;但若该地址仍有用户访问或历史价值,应先重定向到规范形式,再观察后续抓取是否减少。
假设某站点有page、sort、filter、ref四个参数,每个参数各有若干取值。若全部保留,组合数会迅速膨胀;若只保留page和filter,并把sort固定为默认排序、ref直接丢弃,则有效集合只随页码和筛选条件增长。此时内链只输出page与filter,外链带来的sort和ref通过规范标签收敛。这个例子不保证任何收录或排名结果,只说明集合规模如何从乘法关系降为加法关系。
最后一步是复查:当请求量、抓取量或某个参数统计归零时,不能单独证明处理正确。归零还可能来自抓取预算转移、页面被合并、外链自然减少或统计口径变化。要结合规范标签、内链输出和服务器日志中的状态码分布一起判断,再决定是否调整保留维度。