1gb - .net, ASP, Windows, Apache, PHP хостинг
База документов / Защита данных / Переадресация с HTTP на HTTPS версию сайта

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

смотреть документ на языке:    на украинском украинский   на русском русский

Все современные 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

Добавьте в начало файла .htaccess, который размещен в корне сайта, следующий код:

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

Бесплатные сертификаты Let's Encrypt

Для управления режимами работы сайта по HTTPS, используйте раздел личного кабинета:
Полный список функций ⟹ Параметры работы бесплатного SSL

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

При работе сайта по HTTPS протоколу, веб-сервер формирует следующие HTTP заголовки и их значения:

 X-Forwarded-Proto: https
 X-Forwarded-Port: 443
 HTTPS: on

X-Forwarded-Proto - рекомендуемый к использованию

Анализируя их в своем приложении, вы можете самостоятельно задавать логику работы сайта, определяя необходимость редиректов. Посмотрите так же Поддержка SSL / HTTPS, бесплатно для всех сайтов! - Статья об использовании бесплатных сертификатов Let's Encrypt на 1GB Хостинг.

 

отправить комментарий, замечание, поправку
 


 

Мы всегда готовы ответить на ваши вопросы!
 
  • Любые вопросы и поддержка - support@1gb.ua
  •  

     
       
     
    Наверх     
    Поддержка: support@1gb.ua