Виртуальный деструктор с виртуальными членами в C ++ 11

Чтобы первыми заставить HTTPS, вы должны проверить правильную переменную среды %{HTTPS} off, но ваше правило выше, затем добавляет www.. Поскольку у вас есть второе правило для принудительного использования www., не используйте его в первом правиле .

RewriteEngine On
RewriteCond %{HTTPS} off
# First rewrite to HTTPS:
# Don't put www. here. If it is already there it will be included, if not
# the subsequent rule will catch it.
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# Now, rewrite any request to the wrong domain to use www.
# [NC] is a case-insensitive match
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

О проксинге

Когда за некоторыми формами проксирования, посредством чего клиент подключается через HTTPS к прокси, балансировщику нагрузки, приложению Пассажира и т. д., %{HTTPS} может никогда не быть on и вызвать цикл перезаписи. Это связано с тем, что ваше приложение фактически получает простой HTTP-трафик, даже если клиент и балансировщик прокси / нагрузки используют HTTPS. В этих случаях проверьте X-Forwarded-Proto заголовок вместо переменной %{HTTPS}. В этом ответе показан соответствующий процесс

30
задан Community 23 May 2017 в 11:46
поделиться