Как перейти на HTTPS

Если еще недавно протокол HTTPS был относительной редкостью, то сегодня переход на него становится необходимостью для многих сайтов.

Что такое HTTPS и для чего он нужен

Как перейти на HTTPS

Покупка и установка SSL-сертификата

Завершение перехода с HTTP на HTTPS

Поисковые системы лучше воспринимают сайты с HTTPS-протоколом, а еще протокол защищает данные пользователей от мошенников. В статье пошагово рассказываем, как перейти с HTTP на HTTPS и зачем это делать.


Что такое HTTPS и для чего он нужен


Что такое HTTPS

HTTPS (HyperText Transfer Protocol Secure) — это расширение HTTP-протокола, его используют, чтобы защитить от мошенников конфиденциальные данные, которые пользователи вводят на сайте. Сайтам с протоколом HTTPS доверяют больше, потому что пользоваться им безопаснее.

С июля 2018 года в браузере Google Chrome 68 все сайты с HTTP будут иметь пометку как ненадежные, как написано в блоге компании. Этот браузер довольно популярен, так что стоит озаботиться переходом на HTTPS, чтобы избежать пометки.


У небезопасных сайтов появится пометка


Из-за этого сайты постепенно переходят на новый протокол, с каждым годом тенденция сохраняется .

Данные из блога Chromium на февраль 2018 года:

  • 64% трафика Chrome на Android и Windows защищены протоколом безопасности. В 2017 году было 64% трафика.
  • Более 78% трафика Chrome на ChromeOS и Mac защищены. В прошлом году было 75%.
  • 81 из 100 лучших сайтов используют HTTPS по умолчанию, в прошлом году их было 71.

Судя по росту показателей с каждым годом, процесс перехода сайтов будет продолжаться.


Чем HTTPS отличается от HTTP

Главное отличие - HTTPS перед передачей транспортным протоколом шифрует данные, используя криптографические протоколы SSL и TLS.

Протокол SSL (Secure Sockets Layer) нужен для защиты данных, он гарантирует безопасное соединение браузера пользователя и сервера. Для него требуется установка SSL-сертификата.

А TLS ( Transport Layer Security ‒ безопасность на транспортном уровне) обеспечивает информации три уровня защиты:

1.Шифрование. Данные шифруются, чтобы злоумышленники не смогли узнать, какую информацию передают посетители, и перехватить ее.

2.Сохранность. Все намеренные или ненамеренные изменения данных фиксируются.

3.Аутентификация. Пользователи попадут именно на тот сайт, который им нужен,и будут защищены от атаки посредника.


Зачем нужен HTTPS-протокол

Рекомендуем переход на HTTPS, потому что это даст преимущества перед HTTP:

  • Мошенники не смогут получить доступ к данным, которые передаются через сайт.
  • Google Chrome помечает сайты с HTTP как небезопасные, поэтому их репутация ниже.
  • Пользователи больше доверяют безопасным сайтам.
  • В 2018 HTTPS становится стандартом.
  • В перечне факторов ранжирования есть наличие HTTPS.

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

HTTPS делает пользование сайтом безопаснее и влияет на ранжирование, к тому же все ресурсы постепенно переходят на этот протокол, а поисковики это поощряют. Значит, пора переводить и свой сайт.


Как перейти на HTTPS


Выбор времени перехода

Для начала нужно выбрать время перехода. Переход на новый протокол может обрушить позиции сайта в выдаче на некоторое время, так что лучше не переводить сайт на HTTPS в период, когда им активнее всего пользуются. Пусть это будет, когда у сайта «не сезон», и он пользуется наименьшим спросом.


Подготовка сайта к переходу

Если сайт предварительно не подготовить, могут возникнуть технические проблемы или время всей операции затянется. Как подготовить сайт к переходу на HTTPS:

  1. Если на внутренних ссылках есть указание на протокол, уберите его. Это нужно, чтобы не возникло ошибок при индексации. К примеру, если раньше ссылка выглядела как «http://site.ru/text/», приведите ее в форму «//site.ru/text/».
  2. То же самое нужно сделать со внешними ссылками, привести их url в относительный вид. Иначе могут появиться сбои при функционировании сайта.
  3. Адреса медиаконтента тоже нужно перевести в относительные ссылки. Если объекты базируются на вашем сайте, то этого достаточно. Если некоторые медиа подгружаются со сторонних ресурсов, то проверьте, поддерживают ли они HTTPS. Не поддерживают - заменяйте, они не будут работать на вашем сайте после смены протокола. Это можно сделать быстрее, если исправить протокол на относительный сразу в базе данных для всех ссылок.
  4. Ссылки в rel="canonical" и rel="alternate" также замените на относительные.
  5. Проверьте, что сторонние сервисы, которые вы используете на сайте, поддерживают HTTPS. Популярные обычно поддерживают этот протокол, к примеру Яндекс.Метрика, Директ, Google Analytics, но другие стоит проверить.

Заложите на подготовку срок с запасом, потому что на эти преобразования может понадобиться долгое время, особенно если у вас большой сайт.


Покупка и установка SSL-сертификата


Для работы SSL-протокола необходим SSL-сертификат, для этого нужно его купить и установить.


Какой SSL-сертификат выбрать

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


Переходим на страницу заказа SSL-сертификатов и выбираем нужный тип:

1.DV-сертификат (Domain Validated) - самый простой, подходит для физических лиц и юридических лиц, выдается на один домен одному владельцу. Сертификат защищает информацию, но не гарантирует, что владельцу можно доверять.
Для установки потребуется проверка принадлежности домена. Такой сертификат можно установить на личный блог, небольшой сайт-визитку.

Визуально у сайта появится замочек в адресной строке.



Сайт с сертификатом безопасности


2. OV-сертификат (Organization Validation) - сертификат для коммерческих и некоммерческих организаций, юридических лиц. Для выдачи нужна проверка существования юрлица или ИП и проверка принадлежности домена.

Этот сертификат подходит порталам, магазинам, компаниям, предоставляющим услуги..

Визуально такая форма будет выглядеть как DV-сертификат.


Сайт с сертификатом безопасности


2.EV-сертификат (Extended Validation) - домен с расширенной проверкой, подходит только для юридических лиц. Потребуется проверка принадлежности домена и другие данные о юрлице: свидетельство о гос регистрации, зарегистрированное название и другие данные.

Этот сертификат обычно заказывают банки и крупные организации.

Визуальное отличие в том, что кроме замочка в адресной строке появится зеленое поле с названием фирмы. Такая форма выглядит надежнее.


Сайт с сертификатом и дополнительной формой


Дополнительно сертификаты могут иметь опции: Wildcard, то есть поддержку поддоменов сайта, SAN - поддерживать несколько доменов на одном сервере, IDN (Internationalized Domain Names) - поддержку кириллических доменов.

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

После покупки нужно установить SSL на хостинг, если вы покупали сертификат у своего хостера, это будет чуть проще.

Сертификат обычно покупается как домен или хостинг: на год-два, а потом продлевается.


Как установить SSL-сертификат

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

1.Войдите в личный кабинет хостинга вашего сайта.

2.Найдите раздел SSL.

3. Загрузите эти файлы в соответствующие поля.

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


Загрузка сертификата на reg.ru


4. Проверьте, доступен ли сайт по по HTTP-протоколу и по HTTPS. Он должен быть доступен по обоим.

5. Проверьте корректность установки сертификата на сайте: страницы сайта корректно открываются по URL с учётом нового протокола, а конфигурация SSL корректно установлена. Проверить правильность конфигурации SSL-сертификата можно на сервисе Sslshopper: вставьте адрес сайта в строку и нажмите проверку. Если установка прошла корректно, появится примерно это:


Результаты проверки SSL


Проверить настройку также можно с помощью Ssllabs, сервис проведет анализ конфигурации SSL. Вводите адрес сайта и нажимаете проверку, если все в порядке, появится такой результат:


Успешный результат проверки


Если сервисы покажут некорректную настройку, они определят проблемы и дадут рекомендации по их устранению.

Рекомендуем также проверить отображение сайта через разные браузеры, а также на мобильных устройствах на разных операционных системах.

SSL-сертификат установлен, но выдыхать рано – нужно провести еще некоторые манипуляции в коде сайта и его настройках.


Завершение перехода с HTTP на HTTPS


Проводим техническую настройку

После установки у вас впереди склейка зеркал, то есть копий сайта. Ссылочный вес нужно будет перенести на главное зеркало, это можно сделать в кабинетах вебмастеров поисковиков. Переход займет большое количество времени – до нескольких месяцев. Придется потерпеть, ускорить процесс никак нельзя, мы проверяли.

Пока идет склейка, сайт нужно оставить доступным по обоим адресам. При доступности обеих версий Google сразу будет показывать версию с HTTPS, а Яндекс будет делать это после склейки.

Кроме того, нужны некоторые завершающие действия:

1.Настройте постраничный 301 редирект.
Когда склейка завершится, следует настроить постраничный 301 редирект на страницы с новым протоколом.

Для перенаправления подойдут строчки кода в файле .htaccess:

RewriteCond %{SERVER_PORT} !^443$ 
RewriteRule ^(.*)$ https://site.ru/">https://site.ru/$1">https://site.ru/$1 [R=301,L]
Либо такой вариант:
RewriteEngine on
RewriteCond %{ENV:HTTPS} !on
RewriteRule (.*) https://{HTTPS_HOST}%{REQUEST_URI} [NC,R=301,L]


Код должен сработать для большинства серверов, если для вашего он не подошел, проконсультируйтесь с хостером.

2.Настройте robots.txt, чтобы роботы индексировали сайт только по одному новому протоколу, то есть укажите, что версия с HTTPS — главная. Для этого в файле robots в директиве host добавьте https://.

3.Настройте sitemap.xml, аналогично добавив https://.

4. Проверьте rel="canonical" и rel="alternate", там также должны быть ссылки с HTTPS.

5. Поработайте со внутренними ссылками, включая URL всех статических файлов. В HTML-коде абсолютных ссылок замените HTTP на HTTPS.

Это можно сделать при помощи специальных скриптов, но если вы не ищете легких путей, то вполне можно сделать и вручную. Для объемных ресурсов можно использовать также сервисы SEO-анализа сайтов.

6. Настройте метатег для реферального трафика.
Если на вашем сайте есть рекламные баннеры, ведущие на сайты без HTTPS, то метрики могут не распознавать ваш сайт с сертификатом как источник трафика. Переходы на такие сайты с вашего ресурса Яндекс.Метрика или Google Analytics могут относить к прямому трафику.

Чтобы такого не произошло, добавьте метатег <meta name="referrer" content="origin"> на страницы до тега </head>. Часть "origin" будет означать передачу протокола и домена.

Теперь об изменениях нужно оповестить поисковики – они должны быть в курсе смены протокола.


Оповещаем Яндекс и Google о смене протокола

Оповещаем поисковики. Яндексу о смене протокола можно рассказать здесь:


Сделайте пометку на добавлении HTTPS


А Google – здесь:


Нужно добавить сайт с новым протоколом в Search Console


Добавьте в Search Console адрес сайта, использующего HTTPS. Помните, что Search Console расценивает страницы HTTP и HTTPS как разные, поэтому их данные не совпадают. Если на вашем сайте используются оба протокола, то в Search Console следует добавить два ресурса.



Основные действия вы завершили, теперь остается только ждать. И готовиться к снижению трафика и ТИЦ – при переходе это нормальная история. Не бойтесь, со временем позиции восстановятся и скорее всего улучшатся, благо лояльность поисковиков к HTTPS сайтам только повышается день ото дня.

Комментарии (15)
  15.02.2018 12:14
Проснулись. С добрым утром!
  15.02.2018 14:01
Вода водой
  15.02.2018 14:15
Пока на http проблем нет
  15.02.2018 14:32
Перешел на https в прошлом году и Яндекс тут же занулил ТИц. До сих пор техподдержка отвечает в духе - "ждите обновления".
  15.02.2018 14:38
У меня сразу перешел Тиц на https
  16.02.2018 11:14
Аналогично
  15.02.2018 14:49
без сертификата неплохо себя чуствуем-с)
  15.02.2018 15:29
В данный момент есть препятствия в виде хостингов, которые не спешат внедрять полноценную поддержку сертификатов Lets Encrypt. Поэтому https сайты сильно ограничены в выборе хостинга без переплаты за сертификат. Тем не менее beget и timeweb уже внедрили такой функционал. У первого ещё и до кучи протокол http 2, который сводит к минимуму разницу в скорости загрузки http и https сайтов. При этом многие хостинги заявляют, что поддерживают Lets Encrypt. Но: 1. Многие из них не поддерживают автоматический выпуск сертификата 2. Многие из них не поддерживают автопродление данного сертификата 3. Многие из них требуют покупать выделенный ip-адрес, хотя технология SNI не требует выделенного ip-адреса для Lets Encrypt К счастью, перечисленные мной хостинги не имеют указанных проблем. На них использование https ни стоит ни копейки(исключение составляют интернет магазины, потому что яндекс кассы и прочие секурные сервисы не работают через SNI и для их работы требуется выделенный ip). Скоро и другие хостинги подтягиваться начнут, когда от них побегут клиенты. Пока же я встречаю негатив от ТП хостингов, задавая вопросы про Lets Encrypt В современных реалиях переход с HTTP на HTTPS череват потерей позиций, и каждый сам решает, делать такой переход или нет. Что касается новых доменов то для них обязательно нужно подключать https. Они не рискуют трафиком, но могут быть пессимизированы ПС в будущем, если останутся на небезопасном протоколе. Самая сложная часть внедрения HTTPS - это получение и подключение сертификата. Но многие современные хостинги и панели управления сервером свели эту процедуру к паре кликов.
  15.02.2018 15:30
Хм.. Почему не работают переводы строк?)
  15.02.2018 19:05
Это не безопасно. Здесь не настроен https ))))
  15.02.2018 19:38
Все эта туфта, в большинстве случаев втюхивание не нужных вещей. Всегда принимает платежи посредник через https, для формы авторизации это вообще бред. Если и делать на защищенном протоколе, то только свежий сайт с нуля!
  16.02.2018 15:58
Это в дальнейшем повлияет на выдачу и рекомендации. Если на ваши сайту перестанут заходить, то толку от того кто принимает платежи уже не будет.
  16.02.2018 15:56
Я уже давно перешел на https и не парюсь)))
  16.02.2018 19:20
Никаких преимуществ для информационных сайтов нет, только для продающих или если вы собираете персональную информацию. А так для простых информационных сайтов скорее больше минусов: 1. падает скорость соединения. 2. появляются проблемы на некоторых устройствах и в браузерах с отображением партнерских форм не на https, т.е. они попросту не отображаются, ну и еще много технических проблем по мелочи Очень жаль, что в статье все однобоко, и не описано про отрицательные моменты. п.с. На посещаемость на информационном сайте переезд на https никак не повлиял, ни насколько вообще.
Здесь был комментарий, который удалил модератор.
К данной записи нельзя добавлять комментарии т.к. она очень старая.