RewriteRule .* - [E=protocol:http]
RewriteCond %{ENV:HTTPS} ^on$ [NC,OR]
RewriteCond %{ENV:REQUEST_SCHEME} ^https$ [NC,OR]
RewriteCond %{HTTPS} ^on$ [NC,OR]
RewriteCond %{REQUEST_SCHEME} ^https$ [NC,OR]
RewriteCond %{HTTP:X-Forwarded-Proto} ^https$ [NC]
RewriteRule .* - [E=protocol:https]
上面的代码怎么可能不起作用?此代码以各种可能的方式逐字检查是否为http或https将其存储到var。
但最后protocol
var总是http
值。如果您输入http://example.com
或https://example.com
答案 0 :(得分:0)
唯一对我有用的是:
RewriteCond %{SERVER_PORT} ^443$
很奇怪,最流行的方式不起作用。