Переадресация (редирект) с HTTP на HTTPS версию сайта
Материал из 1GbWiki.
Версия 14:56, 2 апреля 2018 (править) Chapay (Обсуждение | вклад) ← К предыдущему изменению |
Версия 14:57, 2 апреля 2018 (править) (отменить) Chapay (Обсуждение | вклад) К следующему изменению → |
||
Строка 32: | Строка 32: | ||
== Веб-сервер Apache == | == Веб-сервер Apache == | ||
=== Бесплатные сертификаты Let's Encrypt === | === Бесплатные сертификаты Let's Encrypt === | ||
- | Для управления режимами работы сайта по HTTPS, используйте раздел личного кабинета [https://www.1gb. | + | Для управления режимами работы сайта по HTTPS, используйте раздел личного кабинета [https://www.1gb.ua/c/sni Полный список функций -> Параметры работы бесплатного SSL / HTTPS на общем IP] |
== Другие технологии == | == Другие технологии == | ||
Строка 46: | Строка 46: | ||
== Ссылки == | == Ссылки == | ||
- | * [https://www.1gb. | + | * [https://www.1gb.ua/services_ssl_everywhere.php Поддержка SSL / HTTPS, бесплатно для всех сайтов!] - Статья об использовании бесплатных сертификатов Let's Encrypt на хостинге [http://www.1gb.ru 1Gb.ru]. |
- | * [https://www.1gb. | + | * [https://www.1gb.ua/services_ssl.php Поддержка SSL / HTTPS, выделенный IP, бесплатный SSL сертификат] - Использование платных сертификатов на хостинге [http://www.1gb.ua 1Gb.ua]. |
[[Категория:Безопасность]] | [[Категория:Безопасность]] |
Версия 14:57, 2 апреля 2018
Все современные CMS умеют сами правильно определять доступность протокола HTTPS и переключать сайт на его работу. Поэтому, прежде чем вносить изменения в конфигурацию веб-сервера, посмотрите в настройках вашей CMS соответствующие разделы. Одновременное включение перенаправлений через настройки CMS и конфигурацию веб-сервера, может нарушить работу вашего сайта.
Содержание |
Веб-сервер IIS 7 (и выше)
Добавьте в файл Web.config в секцию <system.webServer> следующий код для безусловной переадресации на https версию сайта
<rewrite> <rules> <rule name="HTTP to HTTPS redirect" stopProcessing="true"> <conditions> <add input="{HTTP_X_Forwarded_Proto}" negate="true" pattern="^https$" ignoreCase="true" /> </conditions> <match url="(.*)" /> <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" /> </rule> </rules> </rewrite>
Если необходим редирект с кодом 302, то используйте следующий код:
<rewrite> <rules> <rule name="HTTP to HTTPS redirect" stopProcessing="true"> <conditions> <add input="{HTTP_X_Forwarded_Proto}" negate="true" pattern="^https$" ignoreCase="true" /> </conditions> <match url="(.*)" /> <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" /> </rule> </rules> </rewrite>
Веб-сервер Apache
Бесплатные сертификаты Let's Encrypt
Для управления режимами работы сайта по HTTPS, используйте раздел личного кабинета Полный список функций -> Параметры работы бесплатного SSL / HTTPS на общем IP
Другие технологии
При работе сайта по HTTPS протоколу, веб-сервер формирует следующие HTTP заголовки и их значения:
X-Forwarded-Proto: https X-Forwarded-Port: 443 HTTPS: on
X-Forwarded-Proto
- рекомендуемый к использованию
Анализируя их в своем приложении, вы можете самостоятельно задавать логику работы сайта, определяя необходимость редиректов.
Ссылки
- Поддержка SSL / HTTPS, бесплатно для всех сайтов! - Статья об использовании бесплатных сертификатов Let's Encrypt на хостинге 1Gb.ru.
- Поддержка SSL / HTTPS, выделенный IP, бесплатный SSL сертификат - Использование платных сертификатов на хостинге 1Gb.ua.