网站收录

分页与列表页的收录处理:第 2 页以后要不要进索引

列表页和分页常被一起讨论,但它们承担的任务并不相同。分页主要是帮蜘蛛发现更深的条目,本身很少带来搜索需求。本文梳理分页 URL 的常见写法、noindex 与 canonical 各自的代价,以及判断某个分页值不值得留在索引里的检查思路。

网站收录

分页与列表页的收录处理:第 2 页以后要不要进索引

列表页和分页经常被放在一起讨论,但它们其实在做两件事。列表页往往有真实搜索需求,用户会搜某个分类、某个榜单;分页更多是一条路径,作用是让蜘蛛顺着往下走,把更深的详情页找出来。把这两件事分开看,后面的取舍会清楚很多。

先看分页的 URL 是怎么长出来的

常见的形态有这几种:

  • 路径式分页,例如 /list/page/2/
  • 参数式分页,例如 /list?page=2,或者再叠加排序、筛选参数
  • 无限滚动或“加载更多”,内容靠 JS 追加,URL 不变
  • “查看全部”页,把所有条目铺在一个长页面上

前两种对蜘蛛最友好,因为每个状态都有独立地址,可以被单独抓取。后两种的风险在于,如果没有任何可抓取的地址,蜘蛛只能看到第一屏,后面的条目就少了入口。另外要留意 rel="next" / rel="prev" 这类标记,它们已经不再被主流搜索引擎当作收录信号,只算提示,不能替代可抓取的链接。

分页页面对收录的价值到底有多少

一个分页页面本身被搜到的概率通常不高,用户很少去搜“第 7 页”。它的价值主要有两点:传递链接关系、提供发现路径,以及承接一部分浏览型需求。

但分页也很容易变成重复内容的来源。如果分页复用了列表首页的标题、描述和大段摘要,几十个分页在索引评估里看起来会非常接近。结果可能是只有第一个版本被留下,也可能几个版本互相稀释信号。

判断标准可以简化成一句:这个分页有没有独立的、值得被单独检索的信息。如果没有,它更应该被当作路径,而不是被当作目标页面。

三种常见处理方式,各自的代价

用 noindex 关掉分页

这是最常见的做法。需要注意的是,noindex 的分页依然可以被抓取,页面里的链接也依然可以被跟随,蜘蛛顺着往下走还是能发现详情页。真正的风险是同时又在 robots.txt 里屏蔽了分页:蜘蛛既抓不到页面,也看不到页面里的链接,更看不到 noindex,深层页面可能就此断了入口。

用 canonical 指向第一页

把后面几页的 canonical 都指向第一页,表达的是“这些属于同一个序列”。这种做法会让分页基本不进入索引,同时保留可抓取性。代价是,如果分页确实有独立的浏览需求,这部分入口就丢了。还要注意,canonical 指向的页面内容应该确实相近,如果指向的页面差别很大,这个信号本身会被忽略。

保持可索引

适合确实有浏览需求的站点,比如电商的分类翻页、内容站的主题列表。前提是每个分页有自己的标题和描述,并且不出现大量由纯参数组合生成的空页面。

还有一个容易忽略的地方是 sitemap。如果分页已经被 noindex,就不该再出现在 sitemap 里,两种信号互相矛盾,只会让蜘蛛反复确认。如果分页保持可索引,提交少数有独立价值的那几页就够了,把几十页翻页全部塞进去,反而分散了抓取额度。

几个可以落地的检查项

  1. 从列表第一页出发,不依赖 JS 能不能点到后面的分页?
  2. 分页 URL 是否稳定,参数顺序、大小写、尾部斜杠是否统一?
  3. 空结果页、超出范围的分页返回的是 404 还是 200?
  4. 筛选参数组合出的地址有多少,有没有形成大量内容雷同的页面?
  5. 做了 noindex 之后,详情页的抓取量有没有下降?如果明显下降,说明分页一直在承担发现入口的角色,需要补上别的路径。

这些问题没有统一答案,取决于你把分页当成路径还是当成页面。先定下这一点,后面的处理方式基本也就定下来了。