21 способ перенаправления c http на https (redirect)
Очень много вопросов ходит вокруг данной темы. Как сделать свой сайт безопасным? Наша веб-студия mad design собрала все возможные варианты, какими пользуемся мы:
Первое, что необходимо сделать, это получить SSL-сертификат. Вы можете приобрести его или получить бесплатно у большинства компаний, которые предоставляют услуги хостинга.
Что такое SSL-сертификат и зачем он нужен:
Secure Sockets Layer (SSL) - это протокол безопасности, который используется веб-браузерами и веб-серверами для защиты данных пользователей при их передаче в сети Интернет. Он гарантирует безопасное соединение между сервером и браузером пользователя. Сертификаты SSL представляют собой небольшие файлы данных, которые связывают ключ шифрования с данными организации (или физического лица, в случае, если сертификат SSL выпускается на данные физического лица). При просмотре сайтов в веб-браузере SSL-сертификат обеспечивает безопасное соединение между веб-сервером и браузером, о чем свидетельствует наличие значка закрытого "зеленого" замка в адресной строке и префикса "https", с которого начинается адрес страницы. В первую очередь SSL-сертификат необходим интернет-магазинам, банкам, платежным системам и другим организациям, работающим с персональными данными, для защиты транзакций и предотвращения несанкционированного доступа к информации. Кроме того, сайты с SSL-сертификатами имеют преимущество в поисковой выдаче.
И так, сертификат куплен. Теперь нам необходимо, что бы наш ресурс с http://вашдомен.ru переходил автоматически на https://вашдомен.ru. Для этого необходимо все настройки и манипуляции произвести в файле ".htaccess", который располагается в корневой папке вашего сайта.
Вот все самые простые и популярные варианты настройки редиректа для разных сценариев:
Простое перенаправление
Чтобы ссылка на одну страницу перенаправляла на открытие другой, добавьте в файл .htaccess следующую строку:
В предложенном варианте:
- Redirect 301 - инструкция, сообщающая, что страница перемещена постоянно;
- http://example.com/index.html - адрес страницы, на которую происходит перенаправление.
При использовании 301 редиректа рейтинг сайта в поисковых системах сохраняется.
Аналогичный синтаксис простого редиректа в другом примере:
Перенаправление с использованием mod_rewrite
Перенаправление на другой домен
В примере ниже выполняется редирект с www.old-domain.ru на www.new-domain.ru:
RewriteCond задает условие, при котором происходит выполнение правила, указанного в RewriteRule. Таким образом, при запросе любой страницы www.old-domain.ru или old-domain.ru будет осуществлен переход на адрес www.new-domain.ru.
Перенаправление домена без www на домен с www
Данное перенаправление также может быть выполнено двумя способами. В примерах осуществляется редирект с forum.example.ru на www.forum.example.ru.
Способ 1.
Способ 2 (в данном способе нет необходимости указания домена).
Перенаправление домена с www на домен без www
В примерах осуществляется перенаправление с www.forum.example.ru на forum.example.ru.
Способ 1.
Способ 2.
Перенаправление в подкаталог
Перенаправление поддомена forum.example.ru в подкаталог forum:
Перенаправление поддомена www.forum.example.ru в подкаталог forum:
Перенаправление с несуществующего файла
Такие перенаправления могут быть полезны, когда необходимо, чтобы тот или иной статический файл (.txt, .jpg, .pdf и многие другие расширения) обрабатывался Apache вместо Nginx.
Перенаправление на PHP-скрипт при обращении к несуществующему файлу robots.txt:
Перенаправление с несуществующего файла filename.jpg на необходимый статический файл (предварительно нужно переименовать filename.jpg - например, в filename.jpg2):
Перенаправление c http на https
Вариант 1 (без дополнительных условий).
Вариант 2 (перенаправление с http://example.ru на https://example.ru).
Вариант 3 (перенаправление с http://example.ru на https://example.ru с отключением перенаправления для robots.txt).
Вариант 4 (перенаправление с http://example.ru на https://www.example.ru).
Вариант 5 (перенаправление с http://www.forum.example.ru на https://forum.example.ru).
Вариант 6 (перенаправление с http://forum.example.ru на https://www.forum.example.ru).
Перенаправление с https на http
Перенаправление на http для одной страницы
Вариант 1.
Вариант 2 (общее перенаправление на https, с перенаправлением одной страницы на http). Этот способ часто необходим для CMS Bitrix и корректной работы обмена данными с 1С, т.к. 1C не может подключаться по протоколу https.
Отключение перенаправления на https для страницы bitrix/admin/1c_exchange.php для корректной работы обмена данных с 1C: