站点小的时候,每个页面都是手写的,收录问题相对简单。站点变大以后,标签页、站内搜索结果页、日历归档页、作者聚合页这类由系统自动生成的 URL,会很快超过人工页面的数量。它们该不该让蜘蛛抓、该不该进索引,往往没人专门管,最后就成了收录数据里的水分。
自动生成的页面通常从哪来
- 标签、分类、专题的聚合页,以及它们的多级组合;
- 站内搜索结果页,尤其是带关键词参数的那种;
- 按时间归档的日历页,某年某月甚至某天一个 URL;
- 作者、地区、价格区间等维度自动筛出来的列表页。
这些页面不是没有价值,问题在于其中多数是同一批内容的重复排列,真正独有的信息很少。
它们为什么会拖累收录表现
第一,内容稀薄且高度相似。同一篇文章可能同时出现在首页、分类页、标签页、归档页和搜索结果页里,搜索引擎要花力气判断哪一个是主体版本,判断不清楚时,就容易出现一批“已发现但未编入索引”的 URL。
第二,数量失控。标签和搜索参数一组合,URL 数量可以是内容量的几十倍,抓取配额被大量分给这些页面,真正需要被发现的深度内容反而排到了后面。
第三,质量信号被摊薄。索引里长期堆着一批低价值 URL,整站的页面质量判断会受影响,在优质内容本来就不多的中小站点上尤其明显。
判断一个页面该不该开放,问三个问题
- 有人会专门搜索它吗?比如“某品牌全部产品”这类组合页可能有人找,而“3 月 15 日的归档”基本没人搜。
- 它有没有独有的内容?如果整页内容都能在别处找到,独立价值就很低。
- 它的数量可控吗?如果参数一换就能生成成千上万个变体,就要谨慎。
三个问题都答不上来的页面,默认不让它进索引,通常更稳妥。
几种常见处理方式,别用混
- noindex:希望页面能被抓取、但不进索引时用它,写在页面 meta 里,蜘蛛必须抓到页面才看得到。
- robots.txt 屏蔽:希望蜘蛛完全不要访问时用它,比如站内搜索结果页。注意它表达的是“别来抓”,不等于“别收录”。
- canonical:页面本身有保留价值,只是变体太多,可以指向主体版本,让索引和权重集中过去。
- 内链控制:减少导航、列表、页脚对这些自动页面的大量指向,这是最直接、也最容易被忽略的一步。
经常被搞混的一点:如果一个页面既被 robots.txt 屏蔽,又写了 noindex,蜘蛛根本抓不到这个页面,也就读不到 noindex。结果是它可能仍然以“仅有 URL”的形式出现在索引里,既没有标题也没有摘要。要让它彻底不出现,应该先允许抓取,再用 noindex。
不一定要一刀切
标签页里如果有一批确实有人找、内容也够厚的,可以保留并让它们进索引,其余的合并或清掉。站内搜索结果页一般建议屏蔽抓取,但如果搜索能稳定产出有检索价值的组合页,也可以单独留几个入口做人工维护。归档页同理,只保留按年或按月的入口,日期级的 URL 直接挡掉。
做法不用追求一步到位。可以先从服务器日志或搜索控制台里看哪些自动页面真的被抓了、被收录了,再决定收哪些、放哪些。收窄一批低价值 URL 之后,通常要过几周时间,才能在抓取分布和索引状态上看到变化。