当筛选、排序、分页等参数可以任意组合时,URL 空间理论上无限,但真正值得被搜索引擎当作独立地址处理的只是其中一小部分。可行做法是先按“参数是否改变主体内容”划一条线,再按“是否存在稳定入口”决定是保留、规范化还是屏蔽。缺少日志和后台权限时,仍可从站内链接、站点地图和 robots.txt 三处推断出候选集合,但推不出某个地址一定会被收录或一定不会被收录。
定义有效地址集合的第一步不是数参数,而是判断参数对页面主体的影响。可以按两种条件分别处理。
排序方式、每页条数、列表视图与网格视图这类参数,通常不产生新的主体内容,只是同一批条目的不同排列。此时应选择一个默认版本作为规范地址,其余组合要么通过 canonical 指向默认版本,要么在 robots.txt 中禁止抓取。选择依据是:这些地址能否独立满足一个明确的检索意图。如果用户搜的是同一件事,只是希望换个顺序看,就不必为每种组合建立独立地址。
按品牌、价格区间、地区等筛选参数会缩小或替换条目集合,可能对应独立的检索意图。此时不能一律屏蔽,而应判断该组合是否有稳定入口:站内导航是否链接它、站点地图是否列出它、是否有其他页面指向它。有稳定入口的组合可以保留为有效地址;仅靠用户任意勾选才出现、没有任何链接指向的组合,应视为无限增长的长尾,不必纳入有效集合。
没有服务器日志、没有抓取统计、也没有后台权限时,不必停在这里。可执行的最小动作是:从站点地图中抽取全部带参数的 URL,按参数名和参数个数分组,再与站内可点击链接做比对。结果是得到三份清单——被链接且有站点地图条目的、只在站点地图里的、两者都不在但能被构造出来的。
这个动作的影响在于它把“无限组合”压缩成可讨论的有限集合,下一步就能对第一份清单保留、对第二份清单复查、对第三份清单屏蔽。但必须说明不能推出的结论:站点地图不保证收录,robots.txt 的抓取限制也不等于可靠的索引移除。地址没有出现在抓取统计里,可能是被屏蔽、可能是没人链接、也可能是抓取预算分配的结果,单看一个现象无法归因。
很多站点把这两个手段当成互斥选项,实际上它们处理的是不同层面。robots.txt 控制是否抓取,canonical 表达多个可抓取地址中哪个是首选版本。对参数组合爆炸的站点,更稳的分工是:
这里有一个例外:如果某组筛选参数确实带来独立流量,而 robots.txt 已经屏蔽了它,那么 canonical 再正确也无法生效,因为页面根本不会被抓取。遇到这种情况,先解除抓取限制,再处理重复问题。是否解除,取决于该组合是否有站内入口和外部链接,而不是取决于它看起来是否“重要”。
假设一个商品站有品牌、价格区间、排序三个参数,每个参数各有若干取值,组合数达到数千。按上面的方法可以这样划分:品牌与价格区间的组合若在导航中有入口,保留为有效地址;排序参数一律视为展示参数,不进入有效集合;三个参数同时出现的组合若没有任何链接指向,限制抓取。
执行这个划分后,下一步动作是复查站点地图:把仍保留的组合列入站点地图,把被屏蔽的组合从站点地图中移除。这样做的结果是站点地图与可抓取集合保持一致,减少“提交了却被屏蔽”的矛盾信号。但要注意,这仍然只是假设示例,实际取舍取决于该站点的检索意图分布,不能直接照搬。
不同搜索引擎对参数处理、canonical 和 robots.txt 的支持细节并不一致,同一套规则在不同引擎下的表现需要分别核查,不能凭一个引擎的现象推断另一个。另外,HTTPS 不保证页面安全无漏洞,也不保证排名,它和参数集合的取舍没有直接关系,不应混入这个决策。
最后要守住一条:有效地址集合是一个基于意图和入口的判断,不是由参数数量决定的机械规则。参数再多,只要没有独立意图和稳定入口,就不该进入集合;参数再少,只要对应明确检索需求且有入口,就值得保留。缺少数据时,先做能做的比对,再明确哪些结论暂时不能下。