Редирект / переадресация с HTTP на HTTPS
Опубликовано Денис Завьялов on 05 July 2018 12:55
|
|
Рассмотрим варианты переадресации http версии сайта на https. Редирект можно осуществить с помощью файла .htaccess который находится в корне Вашего сайта. Ниже приводятся несколько вариантов записей, которые нужно добавить в .htaccess: 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]
Тажке можно выполнить переадресацию одного, конкретного файла. Например forhttps.php: RewriteEngine On RewriteCond %{HTTPS} =off RewriteCond %{REQUEST_URI} =/forhttps.php RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L] Или наоборот, нужно чтоб весь сайт, кроме одного файла(forhttp.php), перенаправляло на https: RewriteEngine On RewriteCond %{HTTPS} =off RewriteCond %{REQUEST_URI} !^/forhttp.php RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L] Далее расмотрим варианты переадресации с помощью веб-сервера nginx. Для этого зайдём в Plesk Panel. В Plesk Panel находим необходимый домен и возле него нажимаем "Настройки Apache и nginx" В поле "Дополнительные директивы nginx" указываем следующую запись: server_name test.com; Где test.com и www.test.com - варианты Вашего домена которые необходимо перенаправлять на защищенную HTTPS версию.
Также могут быть полезны и другие виды переадресации - 301 редирект через .htaccess | |
|