Apache htaccess перенаправление HTTP на HTTPS
В этом уроке мы будем выполнять переадресацию HTTP на HTTPS (mod_rewrite – Apache) правило Htaccess на CWP, я предполагаю , что вы уже установили SSL сертификаты и включен протокол HTTPS поддержки для вашего сайта , если вы не сделали этого, то это может сломать сайты, если ssl еще не установлен.
SSL в настоящее время очень важен для повышения безопасности и улучшения SEO. Если вы не установили ssl для своих сайтов, но рассматриваете возможность перехода на https, это повысит доверие к вашим посетителям, а Google повысит рейтинг в поисковой системе.
Как включить HTTP/2 на CWP7 – Centos Web Panel
Давайте начнем:
Использование Apache в качестве основного сервера:
Перепишите правило следующим образом, это нужно добавить в ваши сайты .htaccess:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Принудительно www на www https :
RewriteEngine On
RewriteCond %{HTTP_HOST} ^yourdomain.com [NC]
RewriteRule ^(.*)$ http://www.yourdomain.com/$1 [L,R=301]
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Замените yourdomain.com на свой домен!
Принудительное использование www и https:
RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
это также добавляет перманентный 301 редирект .
Если верхние правила не работают для ваших веб-сайтов и получаете «слишком много перенаправлений», то вам следует рассмотреть следующее правило htaccess.
Использование Apache в качестве внутреннего сервера за NGINX/VARNISH сервером:
Это нужно добавить на ваших сайтах .htaccess:
Перепишите правило следующим образом, это нужно добавить в ваши .htaccess:
SetEnvIf X-Forwarded-Proto "https" HTTPS=on
RewriteEngine on
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP:X-Forwarded-Proto} !https [NC]
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
ИЛИ
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [NE,L,R=301]
ИЛИ
RewriteCond %{HTTP:X-Forwarded-Proto} =https
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Чтобы весь трафик использовал домен www и SSL HTTPS, используйте следующие правила:
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]