先把“入口”定义清楚:任何能让用户或爬虫到达该栏目的路径都算入口,包括站内导航、正文内链、面包屑、站点地图、分页、RSS、结构化数据里的URL,以及外部链接和平台缓存。找齐入口不能靠一个人回忆,而要把这些来源转成一份可核对的清单,再逐条确认影响范围。
拿你手头正在维护的站点资源,用爬虫工具(如Screaming Frog、Sitebulb,或自建脚本)完整抓一遍,导出所有指向待删栏目及其子路径的内链。这里的关键不是抓取量,而是抓取范围要覆盖:
导出后按“来源页面”和“目标URL”两列去重。如果抓取工具默认跳过nofollow或JS渲染内容,要单独开启对应设置再抓一次,否则会漏掉动态插入的入口。这一步的产出是一份可核对的链接清单,而不是一句“我记得导航里有”。
站内抓取覆盖不到的地方,需要另起一份清单:
假设一个场景:你删掉“行业报告”栏目,但某个合作方两年前在新闻稿里链到了该栏目首页。这条外部链接不会出现在站内抓取里,却会让爬虫反复访问一个404。处理方式是在服务器日志里筛选该路径的访问记录,找出Referer来源,再决定是联系对方改链,还是保留一个301跳转到新栏目。
删栏目之前,先看两个数据源:服务器访问日志和站内搜索词。日志能告诉你该栏目及其子页面最近还有没有真实访问;站内搜索能告诉你用户是否还在主动找这类内容。
如果日志显示该栏目近三个月只有零星爬虫访问、没有用户点击,且站内搜索里也没有对应词,那删除的风险较低。反过来,如果日志里仍有稳定用户访问,或者站内搜索词频繁出现,说明这个入口还在被使用,直接删除会让这部分需求断掉。
这里要提醒一点:访问量归零不能单独证明删除安全。它也可能是统计工具未覆盖、页面被屏蔽、或链接被nofollow导致爬虫不再访问。要把日志、站内搜索和抓取清单三份数据交叉比对,才能判断是“真的没人用”还是“数据没采到”。
多个角色对“哪些入口受影响”有不同理解时,不要争论,直接建一张处理表,每行一个入口,列包括:
这张表的作用是让“我觉得导航里有”变成“导航第3项,已确认,改为指向新栏目”。每勾掉一行,就少一个遗漏入口。处理完成后,再用抓取工具重跑一遍,确认没有残留链接指向已删除路径。
删除栏目并处理完入口后,下一步是验证。验证的核心不是“收录有没有掉”,而是“用户和爬虫是否还能通过旧入口到达有效内容”。具体动作:
如果301跳转后用户仍能到达相关内容,且日志中旧路径访问量下降,说明入口处理基本到位。如果日志中旧路径持续出现大量404,说明还有入口没找齐,需要回到处理表继续排查。改动前后比较要考虑季节和搜索需求变化,不能只看某一天的访问量就下结论。
最后,把这次删除栏目的入口清单和处理表存档。下次再删栏目时,可以直接复用这份清单结构,把“找入口”变成一次可重复的核对流程,而不是每次靠不同角色各自回忆。