+7 499 753-40-53
+7 499 753-40-53
zapros@web-dius.ru

Как сделать редирект с http на https

Безопасность. Сегодня это базовое требование к сайту, поэтому SSL-сертификат, гарантирующий безопасное соединение, становится не просто хорошим тоном, а обязательным критерием работы и развития любого web-ресурса. Чтобы без потерь перейти на передачу данных по защищенному протоколу, нужно настроить редирект с http на https. Какими способами это сделать, мы объясним в этой статье.

Содержание

 

Что такое редирект

Что такое редирект - картинка

Редирект — это перенаправление с нежелательного адреса на приоритетный. Настраивая автоматическую переадресацию, вы даете серверу команду отдавать по запросу одного URL другой — тот, который считаете более предпочтительным. Как работает принудительный редирект на https?

Человек в браузере кликает по ссылке на сайт X, но эта ссылка размещена еще в беззаботную эру http-протоколов, когда о SSL-сертификатах думали только параноики, а все данные передавались по открытым каналам. С тех пор сайт X перешел на защищенное соединение, а разработчики оформили редирект.

Браузер запрашивает у сервера документ по адресу http://site-x.com, но там прописана команда: вместо устаревшего http://site-x.com отдавать браузеру надежный https://site-x.com. Все это происходит моментально, поэтому пользователь, ничего не заметив, оказывается на правильной странице с защищенным протоколом. Теперь он может вводить свои личные данные, не беспокоясь, что их по дороге перехватят злоумышленники.

Для SEO важно правильно оформлять редиректы, чтобы сайт не упал в ранжировании на поиске, а все плюшки (ссылочная масса, трафик) с исходной страницы (донора) перешли на новую (акцептора). Подробно о разных вариантах переадресации мы писали в статье Узнайте какие бывают редиректы и в каких случаях их нужно настраивать.

Когда требуется редирект на Secure-протокол

Редирект на SSL-сертификат - картинка

Переадресация на безопасный протокол HyperText Transfer Protocol Secure (https) устанавливается после оформления SSL-сертификата.

SSL (Secure Sockets Layer) — криптографический протокол, который гарантирует защищенное соединение между пунктами А и Б — браузером пользователя и сервером, где располагается ваш сайт. Сигнал для пользователя, что вам не безразлична его безопасность и вы подключили SSL-сертификат, — это иконка закрытого замка и адрес, начинающийся с https://. Поисковики могут также предупреждать пользователей, что сайт, на который они хотят перейти, небезопасен. Это отпугивает потенциальных посетителей.

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

Google с 2014 года отдает приоритет сайтам с защищенным протоколом, Яндекс также учитывает этот фактор в распределении мест под солнцем.

Справка Яндекса: «Яндекс старается учитывать все относящиеся к качеству сайта данные, которыми обладает. Безопасность — важный атрибут качества для пользователя, а один из признаков безопасного сайта — использование протокола HTTPS. Выбирая защищенный протокол, владелец сайта заботится о безопасности пользовательских данных, и это может быть учтено в ранжировании».

Подготовка к переезду

  1. Внутри ресурса все абсолютные ссылки с полным адресом должны быть заменены на относительные (без указания протокола). Например, http://site-x.com/page-1/ меняем на site-x.com/page-1/ или /page-1/.
  2. В файле с директивами для поисковых краулеров robots.txt нужно переделать строку Host: сюда прописываем URL домена с новым Secure-протоколом: Host: https://site-x.com. Эту директиву Яндекс отменил в 2018 году, но некоторые сеошники продолжают прописывать ее до сих пор - мало ли что. Вдруг однажды поисковики передумают.
  3. Файлы robots.txt и sitemap.xml должны быть доступны по обоим протоколам и содержать ссылки с защищенным протоколом.
  4. Адреса http://site-x.com и https://site-x.com поисковый бот считает разными ресурсами. Пока он поймет, что по ним находится одинаковый контент, и объединит обе площадки в группу зеркал, вы потеряете время и позиции в выдаче. Поэтому, получив SSL-сертификат и оформив редирект всех страниц с http на https, нужно сообщить о нововведениях в консолях вебмастеров.

Переезд в Яндекс Вебмастере

  1. Обзаведитесь SSL-сертификатом (купите, или найдите бесплатный или самоподписанный) и настройте его.
  2. Добавьте сайт в Яндекс.Вебмастер, если вы еще этого не сделали.
  3. Перейдите на незащищенную версию, в разделе «Индексирование» → «Переезд сайта» отметьте галочкой пункт «Добавить HTTPS» и сохранить изменения.
  4. В течение 1–3 недель ждите уведомление о смене главного зеркала у старой версии. После окончательного переезда в Вебмастере все URL будут отдаваться под основным адресом https.

Переезд на https в Яндекс Вебмастере - скриншот

Переезд в Google Search Console

Тут все проще: открываем консоль вебмастера, нажимаем вкладку «Добавить ресурс», в правом окне вносим новый URL с защищенным протоколом, жмем «Продолжить», право собственности подтверждается автоматически, жмем «Готово». Осталось добавить ссылку на новую карту Sitemap, и сайт переехал. В панели должны остаться оба варианта URL: http и https.

А пока суть да дело, нужно настроить редирект. Сделать это можно разными способами.

Переезд на https в Google Search Console - скриншот

Как настроить редирект с HTTP на HTTPS через ISPmanager на хостингах

ISPmanager — одна из самых популярных российских панелей управления хостингом и сайтами. Среди прочих опций здесь доступна настройка SSL-перенаправлений. Редирект настраивается за пару шагов:

  1. Заходим в раздел «Домены» → «WWW-домены».
  2. Выбираем кандидатуру для безопасного соединения и жмем кнопку «Изменить».
  3. Ставим галку напротив пунктов «Защищенное соединение (SSL)» и «Перенаправлять HTTP-запросы в HTTPS», жмем OK.

Редирект с HTTP на HTTPS через ISPmanager - скриншот

Переадресация с HTTP на HTTPS для семерки самых ходовых хостингов

Переадресация с HTTP на HTTPS для хостингов - фото

Редирект без хостинга можно оформить на стороне браузера, используя HTML и JavaScript, но работать такая переадресация будет медленнее. Оформление редиректов на стороне сервера предпочтительнее, т.к. не тормозит скорость загрузки.

Рассмотрим, как настроить редирект с http на https на разных хостингах, изменяя код в файле .htaccess. Здесь команды задаются в модуле mod_rewrite двумя параметрами:

  • RewriteCond — это условие, при котором должна выполняться директива RewriteRule.
  • RewriteRule — непосредственно директива.

Для разных хостингов параметры прописываются по-разному. Кириллические домены в зоне .рф или .рус нужно перевести в формат Punycode (например, на сервисе Punycode converter).

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

  1. Через FTP: корневая папка домена → каталог public_html → .htaccess.
  2. На консоли управления хостингом через «Диспетчер файлов».

Скачайте файл для работы, добавьте туда нужные строчки кода, чтобы установить 301 редирект с http на https, и снова загрузите обновленный .htaccess.

Если вы нигде не нашли файл .htaccess, придется его создать и заполнить.

Все рекомендации по настройке редиректа мы нашли на сайтах хостингов в разделах техподдержки. Ссылки на более подробные рекомендации из первоисточников даны под строчками кода.

Timeweb

Код редиректа с http на https для Timeweb - скриншот

Подробнее здесь: Типовые перенаправления - Виртуальный хостинг - Справочный центр Timeweb.

Masterhost

Код редиректа с http на https для Masterhost - скриншот

Подробнее здесь: Техническая документация.

nic.ru

Код редиректа с http на https для nic.ru - скриншот

Подробнее здесь: Настройка сайта для работы по HTTPS

reg.ru

Код редиректа с http на https для reg.ru - скриншот

Подробнее здесь: Редирект через .htaccess.

beget.com

Код редиректа с http на https для beget.com - скриншот

Подробнее здесь: Полезные статьи. Подключение SSL к сайту.

sweb.ru

Код редиректа с http на https для sweb.ru - скриншот

Подробнее здесь: Настройка сайта для работы по HTTPS.

jino.ru

Код редиректа с http на https для jino.ru - скриншот

Подробнее здесь.

Синтаксис серверного редиректа на HTTPS

Единого синтаксиса для настройки серверного редиректа с http на https-протокол через htaccess нет, поэтому иногда приходится перебирать варианты, проверяя, насколько корректно отработает каждый из них. Если на вашем хостинге нет четких указаний по прописыванию директивы, предлагаем 8 вариантов синтаксических конструкций. Какая-нибудь из них да выстрелит.

RewriteCond

RewriteRule

1

%{HTTPS} =off

(.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

2

%{SERVER_PORT} !^443$

.* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

3

%{ENV:HTTPS} !on

^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

4

%{HTTP:X-HTTPS} !1

^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

5

%{HTTP:CF-Visitor} '"scheme":"http"'

^(.*)$ https://www.site.ru/$1 [L]

6

%{HTTP:X-Forwarded-Protocol} !=https

.* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

7

%{HTTP:X-Forwarded-Proto} !https

%{HTTPS} off

(здесь прописываются 2 условия RewriteCond)

^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]

8

%{HTTPS} off

%{HTTP:X-Forwarded-Proto} !https

(прописываются 2 условия RewriteCond)

^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Примеры редиректов на защищенный протокол для разных сценариев

Как сделать редирект с http на https, когда есть дополнительные условия? Рассмотрим 3 самых распространенных сценария, в зависимости от которых нужно вставить в файл .htaccess определенные строчки кода:

  • переадресация всех страниц сайта с незащищенного протокола (в том числе с WWW) на https:

Вариант №1

RewriteEngine On

RewriteCond %{SERVER_PORT} !^443$

RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Вариант №2

RewriteEngine On

RewriteCond %{HTTPS} =off

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

  • редирект на защищенный протокол для одной страницы:

Вариант №1

RewriteEngine On

RewriteCond %{HTTPS} =off

RewriteCond %{REQUEST_URI} =/название_вашей_страницы.php

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

Вариант №2

RewriteEngine On

RewriteCond %{SERVER_PORT} !^443$

RewriteCond %{REQUEST_URI} =/название_вашей_страницы.php

RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

  • переадресация на защищенный протокол всех страниц за исключением одной:

RewriteEngine On

RewriteCond %{HTTPS} =off

RewriteCond %{REQUEST_URI} !^/название_вашей_страницы.php

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

 

Внимание! Не забудьте вместо фразы «название_вашей_страницы» подставить нужные данные на латинице.

Проверка редиректа

После настройки редиректа с http на https нужно проверить, как он отрабатывается в разных поисковых системах. Самая поверхностная проверка: ввести в адресную строку браузера URL с протоколом http, если редирект сработает, то откроется сайт с правильным адресом https и значком закрытого замка. Но это еще не значит, что переадресация настроена корректно, поэтому рекомендуем более вдумчивую проверку с помощью онлайн-сервиса Redirect Checker.

Здесь можно проверить, не работает ли редирект с https на http как-то криво. Если все настроено без косяков, в результатах вы увидите надпись «301 Moved Permanently», если что-то пошло не так и вместо правильного 301 отрабатывается циклический 302 редирект, сервис сообщит об ошибке. Это значит, что надо подбирать другие строчки кода, пока все не получится.

Проверка редиректа с http на https - скриншот

При проверке нашего сайта сервис ошибок не нашел

Для проверки переадресации в разных поисковых системах выберите нужную из выпадающего списка Sel User-Agent.

Проверка редиректа с http на https - скриншот

Есть и другие бесплатные сервисы для быстрой проверки редиректов:

Отсутствие или некорректная настройка 301 редиректа с устаревшей записи домена http на обновленную https может негативно сказаться на ранжировании, т.к. поисковик будет воспринимать страницы с одинаковым контентом как дубли и понижать сайт в выдаче.

Вывод

Работа сайта по защищенному протоколу SSL — это не только забота о безопасности своего ресурса для пользователей, но и важный фактор ранжирования в поисковых системах. Корректная настройка постоянного 301 редиректа с http-адреса на безопасный протокол https позволяет избежать проблем в продвижении сайта и санкций поисковиков за дубли страниц. Пользователи также отдают предпочтение сайтам с защищенным соединением — никто не хочет утечки конфиденциальной информации.

Незащищенный сайт - скриншот

Увидев вместо иконки закрытого замка предупреждение «Не защищено», пользователь, скорее всего, предпочтет сайт конкурента, работающего по безопасному протоколу.

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

После настройки нужно проверить корректность работы переадресации, если все сделано правильно, то в отчете появится запись о 301 редиректе, а страницы будут отдавать код 200.

 

Комментарии

Добавить комментарий

* Поля, обязательные для заполнения
Нужно SEO-продвижение?

Гарантировано:

  • Увеличим трафик из поиска
  • Улучшим позиции в выдаче
  • Преумножим обращения с сайта
Подпишись!
Каждый день полезные материалы
по интернет-маркетингу и не только
DIUS на YOUTUBE
Бесплатный
аудит сайта
Сделаем анализ
сайта, напишем
как сделать
его продающим и
популярным в
поиске
Обучаем SEO
Перезвоним
Добавляйся в наши социальны сети:
Каждый день интересные материалы про маркетинг и не только.
Контакты
Офис продаж:
г. Москва, ул. 4-я Кабельная, 2 строение 1А, 5-й этаж, офис №2
Пн - Пт: 9.00-18.00

SEO-Продвижение:
узнайте стоимость для вашего сайта!

Студия DIUS работает с продвижением сайтов:

Бесплатное составление
бюджета
5
шагов для рассчета стоимости
продвижения онлайн!
 
  • По трафику
  • По позициям
  • Продвижение молодых сайтов
  • Продвижение интернет-магазинов

Ваш расчет готов. Пожалуйста, заполните форму ниже для связи с вами по данному вопросу:

Заказ сайта
Оставить заявку
Заявка на расчет
Оставить заявку
Оставить заявку
Заказ услуги
Заказ услуги
Заказ работ
Продвижение от 10.000 рублей
X
Хочу быть автором