重定向入口在网站设置左侧菜单的“重定向”或“重定向测试版”;需确认宝塔版本≥6.0、域名已添加至站点,传统方式仅支持整站跳转,测试版支持路径匹配与参数透传,生效前须排除缓存、HTTPS冲突及Nginx配置覆盖。

重定向在哪点?别在“网站设置”里瞎找“301重定向”按钮
宝塔面板从 6.x 开始,把重定向功能拆成了两套:老式的「301重定向」和新出的「重定向测试版」。很多人卡在第一步——点进网站设置后翻遍菜单找不到入口,其实是面板默认隐藏了旧入口,或者你用的是精简版/低版本(5.9 及更早不支持测试版)。
- 确认面板版本:
bt default或登录后看右上角版本号,必须 ≥6.0 - 确保域名已添加到该站点:比如要让
a.com跳转到b.com,两个域名都得在「网站」→「设置」→「域名管理」里存在;只加了b.com,a.com的请求根本进不到这个站点配置里 - 入口路径:网站列表 → 点击目标站点「设置」→ 左侧菜单选「重定向」或「重定向测试版」(后者在新版中常标为「Beta」)
传统重定向够用吗?适合什么场景
够用,但只适合最简单的「整站跳转」,比如统一 example.com → www.example.com,或 HTTP 强制跳 HTTPS。
- 配置位置:
重定向标签页 → 填「访问域名」(如example.com)、填「目标URL」(如https://www.example.com)→ 勾选「启用301」 - 关键限制:不支持路径级匹配(比如只跳
/old/下所有链接),也不支持条件判断(如仅对移动端跳转) - 常见错误:目标URL漏写协议,比如填了
www.example.com却没写https://,而站点又启用了 SSL,结果跳过去是证书警告页 - 生效依赖:Nginx 配置会自动生成
return 301指令,但若手动改过站点配置文件(/www/server/panel/vhost/nginx/xxx.conf),可能被覆盖或冲突
测试版重定向怎么开?重点看三个开关
「重定向测试版」不是噱头,它把原来藏在 Nginx 配置里的逻辑可视化了,尤其适合做路径跳转、参数透传、多条件分流。
- 入口:网站设置 → 「重定向测试版」→ 「添加重定向」
-
开启重定向:总开关,关了整个功能失效,别误点 -
重定向类型:选「域名」就等效传统方式;选「路径」才能填类似/blog/或/api/v1/这样的前缀 -
保留URI参数:决定是否带子路径跳转。例如访问old.com/a/b?c=1→ 目标new.com,勾选后跳去new.com/a/b?c=1,不勾则只到new.com - 注意:目标URL必须可访问,宝塔不会校验连通性;填错会导致用户看到 502 或空白页
重定向不生效?先查这三处缓存和冲突
重定向失败,八成不是配置错了,而是被别的规则拦住了,或者浏览器/CDN 把旧跳转记太牢。
- 浏览器强缓存:301 被永久记住,哪怕你删了重定向规则,Chrome/Firefox 仍会本地跳。用无痕模式(
Ctrl+Shift+N)或 curl 测试:curl -I http://old.com - HTTPS 强制跳转冲突:如果站点开启了「强制 HTTPS」,它会在 Nginx 配置里加一段
if ($scheme = http) { return 301 https://... },它优先级高于你配的重定向,导致 http → https → 再跳目标,容易乱套 - 多个重定向叠加:比如同时开了传统重定向 + 测试版重定向,或在不同站点绑定了同一域名,Nginx 加载顺序可能导致某条规则被忽略
- 额外检查点:确认 Nginx 已重载(
/etc/init.d/nginx reload),且没有在「网站配置文件」里手写过rewrite或location冲突规则
真正麻烦的从来不是点几下保存,而是搞清「谁先执行」「谁覆盖谁」「谁在偷偷缓存」。尤其是混合用了强制 HTTPS、CDN、自定义 Nginx 配置的环境,重定向很容易变成黑盒。










