做站点运营时,URL 发现常被理解成“有没有提交 Sitemap”或者“有没有外链”。但蜘蛛真正走的路,是从一个页面跳到另一个页面。如果某个页面能被访问,却在站内没有任何可跟随的入口,它就像一座孤岛:蜘蛛偶尔从 Sitemap 或外链游过去,抓完却发现没有下一步。
孤岛页面不等于打不开的页面
孤岛页面的典型特征是:URL 返回 200,内容也正常,但从首页、栏目页、文章页都找不到指向它的 可跟随链接。它可能只存在于 Sitemap 里,或者只被一个 nofollow 链接提到过,又或者链接写在 JavaScript 点击事件里,需要用户交互才出现。
对蜘蛛来说,抓到一个页面之后,会解析 HTML,继续找下一批 URL。如果这个页面没有合格的链接,抓取路径就断了。断点越多,蜘蛛在站内可走的范围就越小。
常见的形成原因
- 只把 URL 放进 Sitemap,站内导航和正文里没有对应入口。
- 列表页只展示最近内容,旧内容被归档后没有可点击的分页或分类链接。
- 链接用 onclick 或 div 模拟,没有可被蜘蛛读取的 a 标签。
- 为了控制权重,给大量内链加了 nofollow,等于把路标遮住。
- 改版时旧路径被删掉,新页面又没有补上内链。
- 筛选参数、排序参数把真实入口藏进多层交互里。
对抓取和发现的实际影响
Sitemap 可以完成“发现”,但它不负责告诉蜘蛛这个页面有多重要、该多久回来一次。孤岛页面通常抓取频率低,内容更新后也不容易被重新访问。如果站点规模大,孤岛页面还会消耗抓取预算,让蜘蛛把时间花在缺少出口的页面上。
这不代表孤岛页面一定不会被收录,而是说它的抓取和复抓都不稳定。站点越依赖搜索引擎带来流量,这种不稳定越值得处理。
自查时看什么
- 看服务器日志:哪些 URL 的抓取来源只有 Sitemap,几乎没有站内 Referer。
- 用爬虫工具跑一遍站内链接,找出入链为 0 的页面。
- 检查重要页面在渲染后的 DOM 里有没有真实的 a href。
- 确认这些链接没有被 robots.txt、meta robots 或 nofollow 拦掉。
- 对比 Sitemap 和站内链接,看两边覆盖的 URL 是否长期不一致。
修复思路:让重要页面回到路径上
优先处理有搜索需求、有转化价值的页面,而不是给所有页面硬塞链接。可以从几个位置补入口:
- 面包屑和分类导航,让页面回到上级路径。
- 相关推荐、上一篇/下一篇,给内容页增加横向出口。
- 归档页、标签页和分页保留稳定链接,不要只靠加载更多。
- 把关键链接写成普通 a 标签,减少依赖 JavaScript 跳转。
- Sitemap 与内链尽量一致:Sitemap 里重要的 URL,站内也应该有路径可走。
另外,服务器稳定性会直接影响蜘蛛是否愿意继续走。频繁的 5xx、超时或限速,会让蜘蛛降低抓取节奏,原本能走通的路径也可能暂时断掉。抓取路径的维护,不只是加链接,也包括保证页面能被稳定响应。
内链不是装饰,它是蜘蛛继续走的路标。没有路标的页面,只能等蜘蛛碰巧路过。
最后可以用一个简单标准判断:如果关掉 Sitemap,蜘蛛还能从首页一路点到这个页面吗?如果不能,它就算不是孤岛,也离孤岛不远。