Хаки и Скрипты Next Generation CMS

Получил сертификат SSL. Как настроить редирект с http на https

irbees2008 irbees2008 Опубликовано - 17 - марта htaccess
2619 - 0
  • Уровень сложности исполнения: это делается простым копированием и нажиманием кнопки

Ну дали мне бесплатный сертификат ssl. Подключили через панель, но теперь надо настроить переадресацию чтобы сайт всегда открывался по безопасному https:// протоколу. Ну о переадресациях я уже написал не одну статью, поэтому немного повторимся.

Итак открываем файл .htaccess который в коне вашего сайта и добавляем правила которые указаны ниже, ну и исходя из требований вашего хостинга

Редирект всех страниц с http:// на https:// в том числе и с http://www на https://

вариант 1

Код:
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
или, если первый вариант не поможет, воспользуйтесь вторым вариантом:

вариант 2
Код:
RewriteEngine On
RewriteCond %{HTTPS} =on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

вариант для хостинга Агава
Код:
RewriteEngine On
RewriteCond %{ENV:HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

если все варианты не помогли и возникает циклическая переадресация:
вариант 3
Код:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Редирект на https только определённой страницы например ниже редирект настраивается для страницы login.php.

вариант 1
Код:
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} =/login.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

или

вариант 2
Код:
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} =/login.php
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

Редирект на https всех страниц, кроме одной например ниже редирект настраивается для страницы test.php.

вариант
Код:
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} !^/test.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

Ещё на php xерез index.php
Код:
if(empty($_SERVER['HTTPS']) || $_SERVER['HTTPS'] == "off"){
$redirect = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
header('HTTP/1.1 301 Moved Permanently');
header('Location: ' . $redirect);
exit();
}

Итак если у вас хостинг Windows то перейдите в каталог сайта и добавьте в файл web.config следующие строки:

Редирект для основного домена и всех поддоменов
Код:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect to https" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

Редирект только для основного домена, без поддоменов

Код:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect to https" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
<add input="{HTTP_HOST}" pattern="^domain\.ru" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

Ну вот вроде и все, ни чего сложного, также смотрите документацию для вашего хостинга, задавайте вопросы в техподдержку хостинга, да и просто по гуглите .

Можешь почитать и вот эту статейку "HTML теги body "

Опрос

Ваше мнение

Ваше отношение к TWIG
Результаты

Последние комментарии

Теги

Anything in here will be replaced on browsers that support the canvas element

Статистика

  • Caйту: 4365 дней
  • Новостей: 566
  • Комменты: 257
  • Зарегистрированно : 660
  • Онлайн всего: [11]
  • Гости: [11]
  • Были сегодня : [3] Google, Яндекс, Google
  • SQL запросов: 29
  • Генерация страницы: 0.278сек
  • Потребление памяти: 5.259 Mb 
  •   Яндекс.Метрика