Как сделать редирект с http на https?
, 14.01.2017
Для настройки переадресации нужно добавить в файл .htaccess правила.
Файл .htaccess должен быть расположен в каталоге сайта. Если файл отсутствует, просто создайте его.
Редирект всех страниц с http:// на https://, в том числе и с http://www на https:// вариант 1:
Редирект на https только определённой страницы В примерах редирект настраивается для страницы post.php. вариант 1:
В примере редирект настраивается для страницы articles.php. вариант:
Редирект всех страниц с http:// на https://, в том числе и с http://www на https:// вариант 1:
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
или, если первый вариант не поможет, воспользуйтесь вторым вариантом:
вариант 2:
RewriteEngine On
RewriteCond %{HTTPS} =on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
вариант 3:
RewriteEngine On
RewriteCond %{ENV:HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
если все варианты не помогли и возникает циклическая переадресация:
вариант 4:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Редирект на https только определённой страницы В примерах редирект настраивается для страницы post.php. вариант 1:
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} =/post.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
вариант 2:
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} =/post.php
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
В примере редирект настраивается для страницы articles.php. вариант:
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} !^/articles.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]