服务器端重定向是指 Web 服务器通过 HTTP 响应头的 Location 字段指定转发目标 URL 的重定向方式。它使用 301、302、307、308 这些状态码,是对 SEO 最为合适的标准转发手法。
服务器端重定向的处理流程是:浏览器发送请求,服务器返回 3xx 状态码与 Location 头,浏览器再自动向 Location 所指的 URL 发送请求。这一处理通常在 50 到 200 毫秒内完成,用户几乎意识不到重定向的存在。
它与客户端重定向 (meta refresh、JavaScript) 最大的区别在于,重定向是在读取页面的 HTML 之前就被执行的。客户端重定向要等页面先显示出来才会跳转,因此用户会看到「闪烁」,也会感到体感上的延迟。
服务器端重定向的实现方法有多种:Web 服务器的配置 (Apache 的 `.htaccess`、Nginx 的 rewrite 规则)、应用程序代码 (Express.js 的 `res.redirect()`、Django 的 `HttpResponseRedirect`)、以及 CDN 与负载均衡器的规则 (CloudFront、ALB) 等。在短链接服务中,用应用程序代码从数据库取得重定向目标并返回 302 响应,是标准的实现方式。