大多数运营者盯着的是「收录变少了怎么办」,但收录变多同样会带来问题。当站点里大量模板化、重复、几乎没人访问的 URL 被搜索引擎收进索引,往往会出现一种状况:索引规模在涨,真正能被搜到的有效页面却没有变多。这就是通常说的索引膨胀。
它不是某种惩罚,而是站点自身内容结构和生成机制的结果。理解它,比单纯追求收录数字更有意义。
索引膨胀的典型表现
- 收录量持续增长,但来自自然搜索的落地页数量没有同步增长;
- 曝光高度集中在少数几个页面,其余大量页面长期零曝光;
- 抓取日志里,模板化目录(标签、作者、筛选、归档)反复被访问,而正文页的抓取频次被压缩;
- 索引中出现大量高度相似的标题与摘要。
常见的膨胀来源
- 筛选与排序参数:颜色、价格区间、排序方式等,每个组合生成一个 URL;
- 标签页、作者页、日期归档:数量随内容累积自动膨胀;
- 站内搜索结果页:本无独立价值,却容易被收录;
- UGC 低质页面:评论墙、无正文的提问页;
- 测试页、历史遗留目录、多协议或多域名副本。
先判断:这些页面值得被收录吗
可以用三个条件大致筛选:是否存在独立的搜索需求、内容是否自足、是否有人从站内入口访问到它。三条都不满足的,通常可以归入需要收口的范围。
反过来,只要满足其中一条,就别急着清理——比如某个筛选页确实有人搜索,且页面上展示的商品组合是独立可用的,它可能是有价值的。
自查顺序
- 用站内目录做粗粒度抽样,先在搜索里看该目录下大致被收录了多少;
- 在抓取日志中按目录统计访问量,找出「被大量抓取、却几乎没有收录或没有曝光」的目录;
- 把效果数据按目录或页面分组,看曝光与点击的分布是否极度集中;
- 把页面分成四类:保留、合并、需要屏蔽、直接下线。分类结果要落在具体 URL 模式上,而不是零散页面。
几种收口方式的边界
noindex
适合页面仍要保留给用户访问、但不希望出现在索引里的情况。它需要页面能被正常抓取,否则标签读不到。注意它不阻止抓取,抓取预算的消耗不会因此减少。
canonical
适合同一内容存在多个入口的场景,用来把权重与索引指向一个规范版本。前提是 canonical 指向的页面本身可访问、可索引,否则容易两头落空。
robots.txt 屏蔽
适合大规模地让某类 URL 不再被抓取。但要清楚:已经被收录的 URL 不会因为屏蔽就立刻从索引消失,而且屏蔽后页面上的 noindex 也无法被读到。对已有收录的目录,通常先 noindex、等索引更新后再屏蔽,顺序更稳妥。
合并与下线
内容确实重复且没有保留价值的,合并到主页面并做跳转;确认不再需要的页面直接返回 404 或 410,让索引自然移除。长期返回 200 的空壳页反而更麻烦。
不要一次性给成千上万个页面加上 noindex。如果误判,恢复收录需要的时间往往比清理本身更长。按目录分批处理,每次改动后留出观察窗口。
收口之后看什么
别只盯着索引数量这一个数字。更有参考价值的是三件事:剩余页面的抓取频次有没有回升、曝光是否更集中到有效页面、模板层还会不会继续产出同类 URL。观察周期建议以周为单位,短期内数字波动属于正常。
常见误区
- 把 noindex 当万能药,忽略了页面仍在消耗抓取;
- 只清理存量,不修改生成规则,几个月后同样的目录又长回来;
- 用屏蔽代替判断,把可能有搜索需求的页面一起挡掉。
索引膨胀的本质是「产出速度超过了内容价值」。清理只是补救,真正的解法是让模板层不再无差别地生成 URL——该合并的合并,该只在站内保留的不给独立地址,该加的抓取与索引约束提前加上。