很多站点在内容量上来之后,会碰到一个现象:新发布的文章很快就有抓取记录,但一些埋在栏目深处的页面,几周甚至几个月都不见动静。问题往往不在内容本身,而在 URL 的目录层级和站点深度——蜘蛛需要经过多少跳,才能走到那个页面。
抓取预算与链接深度
搜索引擎分配给每个站点的抓取资源是有限的。同样一次访问,它可以用来抓一个刚更新的列表页,也可以用来抓一个三个月没动过的深层页面。层级越深,蜘蛛走到的成本越高,被排到队尾的概率也越大。经验上,重要内容尽量控制在首页出发三到四次点击以内,超过五跳才到达的页面,就值得单独检查一下入口是否够多。
常见的层级问题
- 栏目层层嵌套:首页 → 频道 → 子频道 → 分类 → 列表 → 详情,一路下去五六跳。
- 列表分页很深,只有第一页有稳定、可抓取的入口。
- 标签页、日期归档页数量远超正文页,把有限的链接位稀释掉了。
- 部分栏目只能靠站内搜索框或 JavaScript 点击才能到达。
- 栏目改版后旧目录继续保留,新旧结构并行,蜘蛛在两套路径之间来回走。
把深度压下来的几种做法
- 先梳理栏目,合并同类项。一级栏目控制在五到八个,二级栏目尽量不超过三个,让结构一眼能看懂。
- 给重要列表页补入口:首页推荐位、频道页交叉链接、相关推荐模块、热门聚合页,都可以把深层页面往上提。
- 用聚合页承接长尾内容,比如按主题、按地区、按时间维度生成专题页,把散落的详情页串起来。
- 保持 URL 语义,目录名与栏目名对应,避免出现 /p/12345 这类无法判断归属的路径。
- 分页要给出真正的链接,别只做一个「加载更多」按钮;按钮触发的接口地址对蜘蛛并不等于入口。
深度不是越浅越好
扁平化不等于把所有页面都塞到根目录。目录在某种程度上承担了语义归类的功能,栏目划分清楚,蜘蛛和用户都能从 URL 猜出页面大概讲什么。真正要避免的是「无意义的深」:同一个栏目下反复套壳,路径里堆着一串数字 ID 或日期,却看不出内容之间的从属关系。合理的做法是让目录层数与栏目层数基本对应,路径短但不失去语义。
怎么自查
- 看服务器日志,按 URL 的路径段数分组,统计不同深度的抓取频次和占比。
- 导出站内 URL 清单,算一下每个页面到首页的最短跳数,排出最深的那些。
- 用爬虫工具从首页跑一遍,检查有没有只靠内部搜索才能到达的孤岛页面。
- 关注收录与抓取的趋势变化,而不是盯某一天的绝对值。
目录层级和站点深度属于「改一次、长期受益」的基础工作。它不能保证收录,也不等于排名,只是降低了蜘蛛发现页面的成本。
建议每半年做一次结构体检:栏目有没有新增却没入口的,聚合页是不是越堆越多,旧目录还有多少在跳转。把这些理顺,搜索蜘蛛的 URL 发现会顺畅不少,站点运营的很多后续工作也会轻松一些。