站点改版、栏目调整、商品下架后重新上架,都会让一批目标 URL 变成 301 跳转。做 URL 发现和蜘蛛池投放时,很容易遇到一个具体问题:入口页里到底放旧地址,还是直接放跳转后的新地址?两者都能被搜索蜘蛛碰到,但抓取路径、日志表现和后续维护成本并不一样。
先分清 301 的几种常见场景
同样是 301,处理方式不能一刀切。常见有三类:
- 单页换路径:旧 URL 永久跳到一个明确的新 URL,一对一关系清晰。
- 整站或目录迁移:旧目录下大量 URL 按规则映射到新目录,可能形成批量跳转。
- 链式跳转:旧地址先 301 到中间地址,中间地址再 301 到最终页。链越长,抓取时消耗越多,也越容易在中间环节丢失参数。
投放前先确认自己面对的是哪一种,再决定入口页放什么链接。
默认建议:优先投最终的新地址
如果没有特殊原因,蜘蛛池入口页更适合直接指向返回 200 的最终地址。原因很实际:搜索蜘蛛少走一跳,抓取预算更集中;日志里能看到明确的 200 响应,排查时不容易把跳转失败和抓取失败混在一起;后续如果旧地址再被改动,也不会影响已经投放的链接。
旧地址也不是完全没用。如果旧地址在外部仍有一些自然链接、用户收藏或历史流量,保留少量入口指向旧地址,可以帮助确认 301 是否被正常跟随。但不要把它当成主要投放对象。
判断标准可以简化成一句话:如果旧地址的 301 配置稳定、目标明确,投新地址更省事;如果旧地址本身还有外部入口,可以少量补充,但不建议大量重复投。
这些情况下,旧地址不值得继续投
- 301 链超过两跳,或者中间夹杂 302、JS 跳转、meta refresh。
- 跳转最终落到 404、软 404,或者需要登录才能访问的页面。
- 最终页设置了 noindex,或者被 robots.txt 禁止抓取。
- 跳转过程中稳定丢失查询参数,导致目标页内容与预期不一致。
- 旧地址本身返回 5xx、403 或频繁超时,搜索蜘蛛可能直接放弃。
遇到以上情况,继续投放旧地址通常只是在制造无效抓取。先把跳转链修短、修稳,再考虑投放。
投新地址前,先做这几项检查
- 用不带登录态的请求访问新地址,确认返回 200,且内容与用户看到的一致。
- 检查 canonical 是否指向新地址自身,避免新旧地址互相 canonical。
- 确认页面没有误加 noindex、nofollow 或屏蔽搜索蜘蛛的规则。
- 查看服务器和 CDN 日志,确认新地址不会对搜索蜘蛛返回 403、429 或 503。
- 如果新地址带参数,测试参数是否会影响页面内容或 canonical 指向。
这些检查不复杂,但能避免投放后才发现目标页根本不可抓。
跳转链上的参数与跟踪码
301 是否保留查询参数,取决于服务器和跳转规则的实现。有些配置会原样保留 utm、fbclid 等参数,有些会直接丢弃。如果入口页投放的是带跟踪参数的旧地址,而跳转后参数丢失,最终页可能仍能打开,但统计和排查会对不上。比较稳妥的做法是:先用少量链接测试跳转后的实际落点,再决定是否清理参数。
用日志判断投放有没有走通
分批投放后,重点看三类记录:
- 旧地址上的 301 请求是否出现,以及出现的频率。
- 最终新地址是否收到对应的 200 抓取请求。
- 同一个搜索蜘蛛的抓取间隔是否稳定,有没有突然中断或大量 5xx。
如果只看到 301,看不到最终页的 200,说明跳转可能没被跟随,或者中间环节被拦截。这时继续加量意义不大,应该先回到跳转配置排查。
小结
目标 URL 发生 301 时,默认把蜘蛛池入口页指向最终的新地址,旧地址只在有外部入口或需要验证跳转时少量补充。保持跳转链短、目标页可抓、参数行为可预期,再分批观察日志,比一次性大量投放旧地址更容易看出问题。抓取和收录受多种因素影响,投放只是增加被发现的机会,不能替代站点本身的可访问性和内容质量。