Переадресация (редирект) с HTTP на HTTPS версию сайта

Материал из 1GbWiki.

(Различия между версиями)
Перейти к: навигация, поиск
Версия 10:50, 6 февраля 2018 (править)
Renton (Обсуждение | вклад)
(Платные сертификаты на выделенном IP)
← К предыдущему изменению
Версия 10:51, 6 февраля 2018 (править) (отменить)
Renton (Обсуждение | вклад)
(Другие технологии =)
К следующему изменению →
Строка 43: Строка 43:
<nowiki>RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=302,L]</nowiki> <nowiki>RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=302,L]</nowiki>
-== Другие технологии ===+== Другие технологии ==

Версия 10:51, 6 февраля 2018

Содержание

Веб-сервер 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

Платные сертификаты на выделенном IP

Добавьте в файл .htaccess следующий код для безусловной переадресации на https версию сайта

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R,L]

Если необходим редирект с кодом 302, то используйте следующий код:

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=302,L]

Другие технологии

Личные инструменты