Сейчас многие сайты используют протокол https (расширение протокола HTTP для поддержки шифрования в целях повышения безопасности). И достаточно часто возникает задача — редирект страниц сайта на https. Задача решается стандартно, правкой .htaccess.
Как-то так:RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
Но хотела сказать не про это.
Недавно возникла обратная задача — редирект с https на http. У сайта был сертификат безопасности, а теперь не стало.
Редирект пишется по аналогии с кодом выше.RewriteEngine On
RewriteCond %{HTTPS} =on
RewriteRule ^/?(.*) http://%{SERVER_NAME}/$1 [R,L]
Но, оказывается, избавиться от сообщения об ошибке невозможно.
Дело в том, что когда браузер видит в адресе https, то он первым дело обращается не на сайт, а проверяет актуальность SSL-сертификата в центрах сертификации.
Так как сертификат отсутствует, то идет выдача сообщения об ошибке еще ДО ОБРАЩЕНИЯ к сайту, до того момента, когда вы в силах что-то предпринять, редирект предложить.