Как настроить перенаправление с HTTP на HTTPS
Автор:

Чтобы сайт работал по безопасному протоколу HTTPS, после установки SSL-сертификата часто нужно настроить перенаправление (редирект) с HTTP на HTTPS. Перенаправление стоит настраивать только в том случае, если на сайт уже установлен SSL-сертификат. Задачей будет являться редирект всех страниц с http:// на https://, в том числе и с http://www на https://

Если ни один из предложенных вариантов не подошёл, обратитесь к разработчикам сайта или на тематические форумы. В некоторых случаях корректная настройка редиректа возможна только средствами CMS.

Содержание:

Если после настройки перенаправления с HTTP на HTTPS для сайта некорректно отображаются страницы сайта кроме главной, то может потребоваться дополнительно добавить правило в файл .htaccess:

SetEnvIf X-SSL-Emu on HTTPS=on  

Универсальные директивы .htaccess

Открываем файл .htaccess он находится в корневой папке сайта (если файла нет, то создаём), добавляем в конце файла один из пяти вариантов, который подходит для вашего случая.

Первый вариант:

RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$

RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Второй вариант:

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$

RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [QSA,R=301,L]

Третий вариант:

RewriteEngine On
RewriteCond %{HTTPS} =off

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

Четвёртый вариант (если возникает циклическая переадресация):

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Пятый вариант:

RewriteEngine On
RewriteCond %{ENV:HTTPS} !on

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Специфическая настройка для CMS WordPress (4.9.6)

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://activecloud.by/$1 [R=301,L]
RewriteCond %{SERVER_PORT} 80

RewriteRule ^(.*)$ https://activecloud.by/$1 [R=301,L]

В коде, измените activecloud.by на ваш домен. При этом следует проверить настройки сайта в разделе Настройки - Общие. Поля Адрес WordPress (URL) и Адрес сайта (URL) должны содержать адрес сайта, начинающийся с https. 

Специфическая настройка для CMS Joomla (3.8.8)

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{SERVER_PORT} 80

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Дополнительную информацию можно получить на странице документации. 

Специфическая настройка для CMS OpenCart

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{SERVER_PORT} 80

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Затем изменяем файлы config.php и admin/config.php, ищем строки:

// HTTPS
define('HTTPS_SERVER', 'https://yourdomain.com/admin');

define('HTTPS_CATALOG', 'https://yourdomain.com/');

Эти строки должны быть указаны именно с протоколом https.

Специфическая настройка для CMS ModX (2.6.4-pl)

Переименовываем файл ht.access в .htaccess и раскомментируем строки 17, 18, 19:

RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} ^www.(.*)$ [NC]

RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

Специфическая настройка для CMS Bitrix (версия от 18.01.2018)

Для реализации перенаправления достаточно между 16 и 21 строками файла .htaccess добавить:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{SERVER_PORT} 80

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Для получения дополнительной информации по настройке перенаправлений вы всегда можете обратиться к официальной документации используемой CMS.



Если решение вопроса найти не удалось, Вы можете отправить нам заявку:



(43 голос(а))
Эта статья помогла
Эта статья не помогла