You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress站点htaccess配置下非www https域名移动端跳转安全报错问题

核心问题原因

  • .htaccess规则顺序错误,HTTPS/域名重定向规则放在了WordPress默认路由规则之后,而WordPress路由规则带[L]终止标记,匹配后不会执行后续的重定向逻辑,导致部分场景下跳转失效
  • 现有重定向规则逻辑不完整,仅判断了HTTP请求的跳转,没有覆盖https://example.com这类HTTPS裸域名的跳转场景,用户访问HTTPS裸域名时不会触发跳转
  • 站点SSL证书大概率仅绑定了www.example.com,未包含裸域名example.com,用户直接访问HTTPS裸域名时,会先触发SSL证书校验不通过的安全错误,根本走不到后面的重定向逻辑。PC端正常是因为之前有301永久重定向的本地缓存,跳过了裸域名的请求环节,移动端无缓存就会直接报错。

修复步骤

  1. 先确认SSL证书同时添加了example.com和www.example.com两个域名的绑定,避免裸域名HTTPS访问时触发证书错误
  2. 调整.htaccess规则顺序,把重定向规则放到WordPress默认路由规则之前,补全裸域名跳转逻辑,修复后的完整配置如下:
RewriteEngine On
RewriteBase /

# 所有非www、非HTTPS的请求统一跳转到带www的HTTPS地址
RewriteCond %{HTTPS} !=on [OR]
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301,NE]

# WordPress默认路由规则
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

Header always set Content-Security-Policy "upgrade-insecure-requests;"

注:把配置中的example.com替换为你自己的实际域名即可

  1. 配置修改完成后,清空浏览器和站点缓存,再测试移动端访问即可。

内容的提问来源于stack exchange,提问作者Notsoprosql

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 17:45:01