有的页面状态码正常、内容也没问题,写进 sitemap 好几个月,服务器日志里却几乎看不到蜘蛛的访问记录。顺着链接关系查一遍才发现,全站上下没有任何一个内链指向它,导航、列表页、相关推荐里都没有。这类页面一般叫孤立页面,它并不是哪里写错了,而是缺少被走到的路径。
蜘蛛靠链接走路径,sitemap 只是线索
sitemap 的作用是告诉搜索引擎这里有哪些地址,但抓取时爬虫仍会优先沿着站内链接结构去发现和重访页面。一个页面如果长期没有内链入口,即使出现在 sitemap 里,也往往只是偶尔被抓一次,很难进入稳定的重访节奏。更现实的问题是:内链同时承载着权重与主题关联的信号,孤立页面这两样都拿不到,在栏目内部也形不成关系。
怎么把孤立页面找出来
- 对比 sitemap 与内链:用爬虫工具抓一遍全站,导出被内链引用的 URL 列表,再和 sitemap 地址列表做差集,差集部分就是没有入口的候选。
- 看服务器日志:把最近一段时间的蜘蛛访问 URL 去重,与已知页面列表对照,长期零访问且站内流量也为零的地址值得单独看一眼。
- 从后台内容列表反查:CMS 里已发布的文章和页面,逐个确认它至少能在某个栏目列表、标签页或聚合页里出现。
- 留意站内搜索词:用户能搜到、但页面上没有任何入口指向的内容,通常就是被埋起来的那部分。
孤立页面一般是从哪来的
栏目改版与历史沉淀
栏目结构调整后,老页面从列表里被拿掉,但地址还留着;标签页、专题页下线之后,下面挂着的文章也跟着没了入口。
程序自动生成的页面
分页、筛选、标签组合、用户主页等由模板批量产出的地址,如果没有在合适的列表里互相连接,很容易成片变成孤立页面。
内容合并与迁移
把几篇文章合并成一篇,或者从旧系统搬到新系统之后,新地址只更新了 sitemap,却没有同步补上内链。
找到之后的处理思路
- 能补内链的先补内链。在正文里用自然的锚文本链到它,或在同栏目文章的相关推荐位置挂上入口,通常比只改 sitemap 更有效。
- 值得保留的,给它一个稳定位置。比如放回栏目列表、专题页或导航的下级分类,让它有一个固定的上级页面。
- 没有独立价值的,考虑合并或重定向。内容与其他页面高度重合时,硬留一个孤立地址意义不大。
- 确实不需要被搜到的,明确处理。内部工具页、临时活动页可以用 noindex 或权限控制,避免它们混在页面清单里干扰判断。
补完内链不要期待立刻见效。爬虫重新走到这些页面、并把它纳入常规抓取,通常需要一段时间的观察,重点看的是访问频次有没有从零变成偶发。
把这项检查变成常规动作
孤立页面不是一次性问题,每次改版、每次批量发布、每次内容合并都可能新增一批。比较实际的做法是:改版前先导出内链关系留档,改版后隔两三周抓一次全站,对比差集有没有异常增大;发布新内容时,顺手确认它至少有一个内链入口。
这件事的价值不在于多让几个页面被收录,而在于让站内链接结构如实反映内容关系。当每个页面都能顺着链接走到,栏目之间的关联也会更清楚,蜘蛛的抓取路径自然更顺。