Как перенести вебсайт на HTTPs?

Автор: | 09.08.2018

Большинство крупных информационных ресурсов применяли HTTPS еще в начале века, остальные решились на это лишь после 2010 года, когда произошел переполох из-за инструментов хакера из Ирана Марлинспайка Firesheep и SSLStrip, которые дали возможность получения пользовательских данных с сайтов, не использовавших защищенный протокол. Не так давно правительственные круги США издали постановление, которое предписывает всем информационным ресурсам в этой стране переход на указанный протокол. Браузер FireFox уже планирует убрать поддержку HTTP-соединений. Как видим, тенденция перехода на HTTP массовая и ярко выраженная.

Для минимизации риска по просадке трафика, в виду сезонности, есть относительно спокойное время для перехода с HTTP на HTTPS. Яндекс более не обновляет выдачу сайтов со старым протоколом, Гугл еще их индексирует, но защищенные соединения находятся в предпочтении.

Подготовка сайта

До перехода на HTTPS нужно решить имеющиеся недоработки. Начать целесообразно с внутренней перелинковки. Т.е. произвести замену абсолютных ссылок на относительные.

Относительные ссылки могут быть следующими:

  • Не зависящими от домена:

https://mysite.ru/help – это абсолютная.

/help/ – относительная ссылка.

  • Не зависящими от протокола

https://mysite.ru /help – это абсолютная.

//mysite.ru/help/ – относительная ссылка.

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

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

Исправление вложений медиа-контента

Требуется выявить какой контент (графика, презентация, тексты и т.д.) преобладает и какой протокол применяется для обращения к медиа. Здесь необходимы тоже именно относительные ссылки, так как далее загрузка будет выполняться с применением https. Обязательно нужно убедиться в работоспособности.

Если Ваш ресурс хранит файлы, то применяйте, для из загрузки адреса типа: //my_site.ru/img/picture1.jpg. При подгрузке со сторонних ресурсов уточните наличие поддержки https. Отсутствует – либо меняйте файл, либо копируйте на свой сайт.

Многие популярные сайты и сервисы (Ютуб, Фейсбук, В Контакте и т.д.) уже вовсю работаю с https, проблем не возникает. Если есть связи с сомнительными ресурсами, то предварительно выясните наличие поддержки.

Исправление подключений внешних скриптов

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

src=”http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js”

Следует применять:

src=”//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js”

Со сторонними скриптами (Метрика, Директ, Гугл Аналитика, и т.д.) поступайте аналогично. Методика точно такая: популярный ресурс будет поддерживать https. Не популярный – под вопросом.

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

Установка SSL-сертификата

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

Выбор и приобретение подходящего SSL-сертификата

Сертификаты SSL могут быть разных типов. На выбор влияет специфика Вашего сайта.

  • Обычные. Выпускаются за несколько минут. Как правило, лучший выбор для большинства сайтов физ. и юр. лиц. В этом случае выполняется лишь проверка принадлежности домена тому, кто запрашивает сертификат.
  • EV (Extended Validation). Расширенная проверка организации. Дополнительно выявляются: наличие компании, юридические аспекты, whois доменного имени, иногда выполняется контрольная прозвонка. Браузер такие сайты подсвечивает зеленым (Пример – Твиттер).
  • Wildcard. Такой тип необходим при использовании поддоменов. При использовании территориальных субдоменов необходимо применять именно такой тип.

С поддержкой IDN. Специально для доменов с кириллицей

Более подробно можно почитать по ссылке http://habrahabr.ru/company/tuthost/blog/150433/.

Установка сертификата на сервере

Многие хостинговые компании дают возможность самостоятельной установки сертификата через панель управления. Можно даже обратиться в службу поддержки либо привлечь стороннего специалиста, не более часа работы. На самом деле не более пары минут работы. Если пользуетесь услугами не популярного хостинга, то следует выяснить такую возможность. Если хостер до сих пор не работает с Https, следует подыскать другой и перенести сайт туда. Сертификату всё равно, он не завязан на хостера или IP. Он ставится именно на хостинг конкретного сайта.

Проверка доступности сайта через HTTPS-протокол

После установки произведите проверку с http:// и https://. В случае отказа в доступе необходимо выявить причину.

Настройка сайта

Когда сертификат установлен, здесь уже придется поработать.

Настройка директивы Host в файле robots.txt.

Помните, что поисковики воспринимают ресурс с http и https как пару различных ресурсов, не связанных между собой. Оставите что-то одно – ждите просадки трафика. Яндексу необходимо, чтобы в обновленном сайте была указана директива Host в файле robots.txt, где обязательно должен прописываться протокол. Это может выглядеть так:

Host: https://mysite.ru

Так Яндекс узнает, что главное зеркало имеет протокол https.

Установка 301 редиректа с http на https

Не так давно ещё требовалось ожидание переклейщика от Яндекса, для перевода на https. Могло и отрицательно влиять на просадку трафика из Гугл.

В большинстве случаев достаточно в .htaccess дописать:

RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

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

Исправление найденных ошибок

Теперь проверьте работу всех ссылок на сайте, внутренних и внешних. Если в адресе сайта, в браузере отображается замок, то все в полном порядке. Если что-то не так, то необходимо отыскать причину.

Сообщение поисковикам о переносе

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

Добавление https-версии сайта в панель для вебмастеров

Как в Гугле, так и в Яндексе нужно добавить и подтвердить сайт на https. Теперь будет отображаться и эта модификация. Для Гугл более не потребуется никаких телодвижений, вполне необходимо и достаточно 301 редиректов.

Изменение адреса в панели для Яндекса

В Яндексе важно указать https зеркало для http-ресурса. Это выполняется через вебмастер: “Настройка индексирования” — “Главное зеркало” — “Установить протокол HTTPS”.

Перенос дополнительных настроек в панели для вебмастеров со старого хоста на новый.

Если имелись дополнительные настройки, то они должны быть тоже перенесены, чтобы http и https воспринимались как аналоги. Среди важных настроек такие:

  • Указания на регион (геотаргетинг),
  • Файлы Sitemap.xml,
  • Список ссылок в Disawov Tool для Гугл,
  • Удаленные параметры URL для Гугл.

Ожидание переиндексации

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

Как перенести вебсайт на HTTPs?: 2 комментария

  1. Оля

    Сейчас абсолютно все можно сделать автоматически. Есть разные сервисы, которые помогут это сделать.

  2. Артем Попов

    Мое мнение относительно https заключается в том, что сайт на него, по возможности, стоит перевести, тем более способов много.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *