求助:如何阻止WordPress站点HTTP转HTTPS的重定向?
我来帮你搞定这个WordPress的HTTPS重定向问题——要阻止HTTP到HTTPS的跳转,得从几个常见的重定向源头入手,一步步排查:
检查WordPress核心站点设置
先登录WordPress后台,进入「设置」→「常规」,看看「WordPress地址(URL)」和「站点地址(URL)」是不是设置成了HTTPS开头的地址。如果是,把它们改成对应的HTTP地址(比如http://example.com或者http://www.example.com),保存设置。改完后记得清空浏览器缓存,避免旧设置干扰测试。排查Apache服务器的.htaccess文件
如果你的服务器用的是Apache,站点根目录下的.htaccess文件是重定向规则的重灾区。打开这个文件,找找类似下面的强制HTTPS规则:RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]把这段规则注释掉(每行开头加
#)或者直接删除,保存文件即可。如果找不到这段规则,也可以检查有没有其他涉及HTTPS跳转的Rewrite规则。检查Nginx服务器配置
要是用的是Nginx,去服务器的站点配置目录(通常是/etc/nginx/sites-available/)打开对应站点的配置文件,看看有没有专门监听80端口并强制跳转到HTTPS的server块:server { listen 80; server_name example.com www.example.com; return 301 https://$server_name$request_uri; }删除或者注释掉这个server块,然后执行
sudo systemctl restart nginx重启Nginx服务,让配置生效。禁用或调整SSL相关插件
很多WordPress安全插件(比如Really Simple SSL、SSL Insecure Content Fixer)会自动开启强制HTTPS重定向。进入后台的「插件」页面,找到这类插件:要么直接禁用,要么进入插件设置页面,关闭“强制HTTPS”类的选项。清空所有缓存
这一步很关键!除了浏览器缓存(用Ctrl+Shift+Delete快捷键清空),还要清空站点的缓存插件(比如WP Rocket、W3 Total Cache)缓存,如果用了CDN服务,也要在CDN后台刷新缓存,确保旧的重定向规则被彻底清除。检查服务器面板的SSL设置(如cPanel)
如果你用的是cPanel这类服务器管理面板,进入「SSL/TLS」选项,看看有没有“强制HTTPS重定向”的开关,把它关闭即可。
测试验证
修改完所有设置后,你可以用命令行工具测试:
curl -I http://example.com
如果返回的状态码是200 OK,说明重定向已经被成功阻止。也可以用浏览器的隐私模式访问http://example.com,确认不会跳转到HTTPS地址。
内容的提问来源于stack exchange,提问作者Prashant Saxena




