孤儿页面指的是站内没有任何链接指向、外部也没有引用的 URL:它们只出现在站点地图或手动提交记录里,正常爬行路径到不了。这类页面不是打不开,而是缺少被发现和被安排抓取的理由。
孤儿页面为什么容易卡在抓取阶段
蜘蛛沿着链接在站内移动,一个 URL 被多个位置链接到,通常说明它更重要,也更容易被优先抓取。只写在 sitemap 里的 URL,等于报了个名单却没有入口,能不能被抓到,取决于抓取预算是否宽裕。
需要区分的是,被抓取和抓取之后进入索引是两件事。孤儿页面往往连第一步都不稳定,所以讨论收录之前,先把发现路径补上更实际。
常见的孤儿 URL 从哪里来
- 改版、换目录后遗留的旧路径,页面还在,链接没了
- CMS 自动生成的作者页、标签页、归档页
- 活动或专题结束后,从导航和列表里撤下来的页面
- 列表页翻页方式调整后,被挤出入口的详情页
- 由筛选参数或站内搜索生成、没有正常入口的 URL
自查顺序:先画内链图,再谈去留
- 用爬虫工具完整抓一遍站内,导出每个 URL 的入链数量和来源页面
- 挑出入链为 0,且不在导航、列表、正文链接中的 URL
- 按页面类型分组,而不是按数量排序,列表页的问题和详情页的问题处理方式并不一样
- 对每一组判断内容是否还有价值、是否和其他页面高度相似
分组之后再看数量,更容易判断是站点结构问题,还是个别页面漏网。
处理顺序:补入口、合并,还是让它下线
内容仍有用:补一个稳定入口
优先放在层级接近的列表页、相关内容模块或上级页面正文里。入口要长期存在,而不是为了收录临时加一条链接。加完可以再抓一次,确认链接出现在 HTML 里,而不是只靠脚本延迟渲染出来。
与其他页面高度相似:合并
把有价值的部分并入主页面,用 301 指向主题最接近的 URL。注意别把一批页面全部指向首页,那会让跳转失去语义,也让后续排查更困难。
确实不再需要:下线干净
内容彻底删除可以返回 410;页面还在但不希望它出现在搜索里,用 noindex。两者解决的不是同一件事,选错容易出现“删了还留着”或“想留却先消失”的反复。同时把它从 sitemap 中移除,避免继续被反复提交。
补内链时容易犯的几个错
- 把所有 URL 一次性塞进 sitemap,以为名单就是入口
- 在页脚堆几十上百条内部链接,稀释了真正重要的入口
- 给内部链接加 nofollow,等于自己把路封上
- 链接由脚本延迟生成,蜘蛛拿到的 HTML 里根本没有
- 补完从不复查,改版之后又变回孤儿页
站点地图是名单,内链才是路。名单越来越长而路没变多,整体抓取效率会被摊薄。
把它变成一项定期动作
每次改版、下线栏目、调整导航之后,都值得重跑一次内链检查,把孤儿 URL 的数量、以及其中被收录的比例记进索引台账。看趋势比看单次结果可靠:数量持续下降说明结构在收敛,反复上升通常意味着新模板或新功能又在批量产出无入口页面。
还需要提醒一点,补上入口只是让页面具备了被发现的可能,最终是否被抓取、是否进入索引,仍然要看它相对站内其他页面是否提供独立价值。提高被发现的机会,和保证被收录,是两件事。