302 重定向:临时跳转的用途与设置

302 表示资源暂时位于新的地址。它与 301 的区别不在技术实现,而在对搜索引擎的语义:这是临时的,还是永久的。

花里云 约 1 分钟阅读

302 是 HTTP 状态码中的一种,表示被请求的资源暂时位于另一个地址。浏览器收到这个状态码后,会自动转到新地址,但不会把它当作永久变更。

适合用在什么场景

  • 内容临时调整位置,之后可能迁回原地址
  • 站点维护期间,把访客引导到说明页面
  • 按条件把部分访客引导到不同版本,用于对比测试

这些场景的共同点是:变化是暂时的、可回退的。如果地址变更本身是长期决定,就应当使用表示永久跳转的状态码。

与 301 的区别

两者在用户感知上几乎一样,差别在语义:301 表示永久移动,搜索引擎会把原地址的权重与收录转移到新地址;302 表示临时移动,搜索引擎不会做这种转移,仍会保留原地址。

正因为如此,用错状态码会带来直接后果:本该永久迁移的地址用了 302,权重不会转移,新页面的表现长期起不来;只是一次临时调整却用了 301,则可能让搜索引擎提前放弃原地址。

需要说明的是,302 并不会把原地址的权重传递到新地址。选它的理由应当是“变化是临时的”,而不是出于保留权重的考虑。

怎么设置

设置重定向的途径主要有两类:在服务器层面通过配置文件添加跳转规则,或在程序代码中直接返回对应状态码并指定目标地址。前者适合批量、规则化的跳转,后者适合与业务逻辑相关的跳转。

不同服务器软件与开发语言的写法差异较大,建议参照各自的官方文档操作,避免混用示例导致规则冲突。

几点注意事项

  • 避免链式跳转:A 跳 B、B 又跳 C,会拖慢访问并影响抓取
  • 确认目标地址有效,否则访客会落到错误页面
  • 设置完成后实际访问一次,确认跳转方向正确
  • 把临时跳转与永久跳转分开记录,便于后续清理
花里云

西安花里云网络信息科技有限公司 · 企业数字平台厂商。十年一线交付,把项目里验证过的判断,整理成可以复用的东西。