在为 https 运行任何 RewriteCond 或 RewriteRule 之前,是否有办法检查 apache 是否安装了带有 htaccess 的 ssl 证书?
例如:
Apache 安装了 ssl 证书,然后 RewriteCond {HTTPS} !on RewriteRule %{HTTP_HOST}%{REQUEST_URI}
谢谢!
而不是检查“如果 SSL 证书存在”,而是检查“如果 ssl 模块打开” - 后者本身需要证书
<IfModule mod_rewrite.c>
RewriteEngine on
<IfModule mod_ssl.c>
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>
</IfModule>
如果 Apache 没有安装证书,则协议不可能是 HTTPS。