我的知识记录

宝塔如何关闭HTTPS强制跳转,实现HTTP/HTTPS共存?

在使用宝塔面板部署网站时,有时我们希望同时支持HTTP和HTTPS访问,而不是默认的“强制跳转HTTPS”。如果你发现访问 http:// 会自动跳转到 https://,可以通过以下方法关闭HTTPS强制跳转,实现 HTTP 与 HTTPS 共存。

一、常见原因分析

原因 说明
1. 启用了SSL后自动配置了强制跳转 宝塔在部署SSL证书后默认添加301重定向规则
2. Nginx/Apache配置中存在 rewrite 规则 自定义或插件导致的强制HTTPS跳转
3. 网站程序本身做了跳转设置 如 WordPress 设置了固定链接为 HTTPS

二、解决方法(以Nginx为例)

✅ 方法一:修改站点配置,删除强制HTTPS跳转规则

  1. 登录宝塔面板
  2. 进入【网站】 → 找到目标站点 → 【设置】 → 【配置文件】
  3. 在 Nginx 配置中查找如下代码段(通常位于 server { ... } 中):
    
     
    nginx
    if ($scheme = http) { return 301 https://$host$request_uri; }
  4. 删除或注释该段代码:
    
     
    nginx
    # if ($scheme = http) { # return 301 https://$host$request_uri; # }
  5. 点击【保存】按钮
  6. 重启 Nginx 服务使更改生效

✅ 方法二:通过宝塔界面取消强制HTTPS设置(部分版本支持)

  1. 登录宝塔面板
  2. 进入目标站点的【设置】 → 【域名管理】
  3. 查看是否勾选了【强制HTTPS】选项
  4. 如果已勾选,请取消选择并保存
⚠️ 注意:此功能取决于你使用的宝塔版本,并非所有版本都提供图形化开关。

✅ 方法三:检查网站程序配置(如WordPress)

如果你使用的是 CMS(如 WordPress),还需要检查程序中的设置:
  • 登录后台 → 设置 → 常规
  • 将“WordPress地址(URL)”和“站点地址(URL)”设置为不带 HTTPS 的地址,例如:
    
     
     
    http://yourdomain.com

三、验证是否生效

  1. 使用浏览器访问 http://yourdomain.com
  2. 确认不会自动跳转至 HTTPS
  3. 同时测试 https://yourdomain.com 是否仍可正常访问

四、其他建议

  • 保留SSL证书:即使关闭强制跳转,也不影响用户通过 HTTPS 访问
  • 注意SEO影响:HTTP/HTTPS共存可能导致搜索引擎收录重复内容,建议使用 canonical 标签或统一入口
  • 查看访问日志排查问题
    • Nginx访问日志路径:/www/wwwlogs/你的域名.log
    • 可用于确认是否有意外重定向发生

五、总结

要实现 HTTP 与 HTTPS 共存,只需删除或注释掉宝塔自动生成的强制跳转规则即可。主要操作是编辑 Nginx 配置文件,移除 if ($scheme = http) 的 301 跳转逻辑。此外还需检查网站程序本身的设置,确保没有额外的跳转规则。
如仍无法解决,请结合具体配置文件和日志进一步排查,或联系宝塔技术支持协助处理。
 

标签:

更新时间:2025-05-15 11:06:29

上一篇:宝塔SSL证书续签方法:关闭证书并重新申请

下一篇:宝塔关于部分服务器无法获取 Let's Encrypt 证书的解决方法