Настройка редиректа через .htaccess
- 1. Откройте вашу панель управления хостингом.
- 2. Откройте файл .htaccess. Он расположен в корневой папке сайта. Если файл .htaccess отсутствует, то создайте его.
- Нажмите по строке, где указана корневая папка домена. Затем нажмите правой кнопкой по файлу .htaccess и выберите в появившемся списке пункт Открыть/Изменить:
- 3. Добавьте в конце файла .htaccess одно из правил, которое подходит для вашего случая:
Редирект всех страниц с 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} =off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
Если все варианты не помогли и возникает циклическая переадресация, добавьте:
Вариант 3
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Вариант 4
RewriteEngine On
RewriteCond %{ENV:HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Редирект на HTTPS только выбранной страницы
В примерах ниже редирект настраивается для страницы login.php.
Вариант 1
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} =/login.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
Вариант 2
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} =/login.php
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
Редирект на сайт HTTPS всех страниц, кроме одной
В примере ниже редирект настраивается для страницы test.php.
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} !^/test.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
Сохраните изменения.
Готово. Теперь ваш сайт будет работать по протоколу HTTPS.
Свежие комментарии