SSL WWW无法重定向



我试图将所有请求重定向到安全的非www url。但是当我访问https://www时,我的代码无法重定向。这是唯一不工作的url,谁能帮我弄清楚为什么https://www没有按计划重定向?下面是我的代码:

<IfModule mod_rewrite.c>
  RewriteEngine On
  Options +FollowSymlinks
  RewriteCond %{HTTPS} =on
  RewriteRule ^ - [env=proto:https]
  RewriteCond %{HTTPS} !=on
  RewriteRule ^ - [env=proto:http]
  RewriteCond %{HTTPS} !=on
  RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC]
  RewriteRule ^ %{ENV:PROTO}://%1%{REQUEST_URI} [R=301,L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

我使用飞行php为我的路由

您添加了一个条件来确保您对www的重写。仅对非ssl请求有效。

删除rewritecsecond %{HTTPS} !=on

可能存在SSL配置错误问题,因为您没有得到重定向错误。由于某些原因,错误提示"此站点无法提供安全连接"。下面让我逐一解释:

  • SSL证书不是来自可信CA(自签名)。
  • SSL证书已过期
  • SSL配置错误也会提示这样的错误信息
  • 您的计算机时间和日期不正确。
  • 您可能使用了旧的/不安全的SSL证书(SHA1)。
  • 使用旧的网页浏览器。

我建议你检查一下以上几点。

建议:

  • 从受信任的证书颁发机构获取有效证书,其根链已经在领先的web浏览器中(即Comodo或Symantec)。
  • 更新SSL证书
  • 使用SSL检查工具检查您的网站。
  • 使时间和日期完美。
  • 如果您使用的是旧版本的SSL证书,请SSL提供商重新颁发证书。
  • 让你的浏览器更新。

希望这些信息能帮助你解决问题。

最新更新