搜索抓取

孤岛页面怎么被找到:内链、Sitemap 与站内搜索在 URL 发现中的分工

孤岛页面能正常打开,却顺着栏目一层层点不到,蜘蛛往往只能靠 Sitemap 或外链发现,抓取和回访节奏都会慢一拍。本文拆解孤岛页的常见成因,说明内链、Sitemap 与站内搜索在 URL 发现中的不同分工,并给出把页面重新接回站点的具体做法。

搜索抓取

孤岛页面怎么被找到:内链、Sitemap 与站内搜索在 URL 发现中的分工

站点里常有一类页面:能通过搜索框、站内推荐或者外部链接打开,但顺着栏目页一层层点下去永远到不了。这类页面常被叫做孤岛页面。它们不一定是坏页面,却常常因为缺少内链而长时间不被搜索蜘蛛发现,或者被发现之后隔很久才回来一次。

孤岛页面是怎么形成的

大多数孤岛页并不是有意做出来的,而是运营过程中的副产品。

  • 活动页、专题页上线时只在首页挂了两周,入口撤掉后页面本身还在。
  • 详情页被移出列表页,比如商品下架、文章取消置顶,但 URL 仍可访问。
  • 只有站内搜索才能命中的组合结果页,例如带多个筛选条件的列表。
  • 分页很深的归档页,第 30 页之后再没有任何入口指向它。
  • 只在 App 或小程序里出现的页面,网页端没有对应链接。

这些情况的共同点是:URL 存在、服务器返回 200,但从站点的链接图上找不到一条通向它的路径。

蜘蛛发现 URL 的几条常规路径

理解孤岛问题,先要分清蜘蛛可能从哪里拿到一个 URL。常见来源大致有这么几类:

  1. 站内链接:首页、栏目页、列表页、详情页里的 a 标签,这是最主要也最稳定的入口。
  2. XML Sitemap:站点主动提交的候选清单,蜘蛛会把它当作待抓队列的补充来源。
  3. 外链:其他站点指向你的链接,尤其是本身被抓取较频繁的页面上的链接。
  4. 历史抓取记录:之前抓过的页面上再次出现链接,蜘蛛会顺着重访。

孤岛页通常只能依赖第二条和第三条。问题是,Sitemap 提供的更像一份备选名单,而不是抓取的保证;外链又完全不受你控制。只靠这两条路径,URL 被发现的时间、被回访的频率都会明显低于有正常内链的页面。

Sitemap 里放着孤岛页,为什么不等于被正常抓取

不少人把孤岛页塞进 Sitemap 就算处理完了,实际效果往往打折。原因有几层:

  • Sitemap 里的 URL 缺少页面之间的上下文,蜘蛛较难判断它的重要程度,抓取安排上通常靠后。
  • 如果同一份 Sitemap 里混了大量低价值 URL,真正需要抓的页面会被稀释。
  • 孤岛页没有内链,蜘蛛抓到之后也难以继续向外扩散,这条路径基本到此为止。
  • 页面内容更新时,缺少内链带来的再次发现,回访主要靠 Sitemap 的 lastmod 提醒,节奏会慢一拍。
内链解决的是这条路走不走得通,Sitemap 解决的是要不要把这条候选记下来。两者不能互相替代。

把孤岛页重新接回站点

如果页面确实有保留价值,比较稳妥的做法是给它补一条站内路径,而不是长期依赖 Sitemap 兜底。

1. 找到合适的上游页面

它属于哪个栏目、哪类内容,就回到那个栏目里。栏目页、标签页、归档页都是天然的入口,前提是这些页面本身能被蜘蛛正常抓到。

2. 用相关推荐和正文内链补充

在同类内容里加一两条指向它的链接,比在页脚堆一排链接更自然。链接锚文本能说明页面主题,对蜘蛛理解页面也有帮助。

3. 检查列表页的分页入口

翻页如果只靠按钮触发 JS 而缺少可抓取的 a 标签,深层的旧内容就会逐渐失去入口。可以在归档页或按时间排序的列表里保留一条静态入口。

4. 单独整理一份 Sitemap

把确实需要被发现、但暂时没有内链的页面集中放在一个分片里,别和全站 URL 混在一起,方便在日志里观察它们的抓取情况。

日常检查时可以先看这几项

  • 随机抽一批详情页,从首页出发能不能点到它,大概需要几步。
  • 抓取日志里,页面的来源是站内链接,还是只有 Sitemap 与外链。
  • 站内搜索结果页、日历页、无限滚动列表,有没有生成大量无入口的 URL。
  • 下架、合并的页面有没有做收尾处理,避免留下既无内链也无内容的 URL。

孤岛页不是必须清零的问题,但值得定期清点。判断标准很朴素:这个 URL 如果对用户有价值,就应该有一条站内路径能走到它;如果没有价值,与其让它挂着,不如干净地下线或做合并。