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