Создание, продвижение сайтов
40-33-54

Как перенести сайт на HTTPs. Пошаговая инструкция

17 марта 2017

Многие серьезные проекты использовали HTTPS ещё в 2000х, часть перешли на защищенный протокол в 2010-2011, когда был большой бум из-за утилит иранского хаккера Марлинспайка Firesheep и  SSLS trip, позволяющих воровать персональные данные с незащищенных сайтов. Совсем недавно правительство США  поручило всем федеральным сайтам перейти в срочном порядке на HTTPS до конца 2016 года. И уже совсем скоро Mozilla Firefox перестанет поддерживать небезопасные HTTP -соединения в браузере. В связи с этим, предвидится новый бум и массовый переход на HTTPS . Рано или поздно вам тоже придется с этим столкнуться.

Чтобы сильно не рисковать незначительным снижением трафика, как раз летом, в отсутствие сезона, у вас есть время заняться переносом сайта с HTTP на HTTPS . Тем более, что Яндекс прекратил обновлять выдачу, а Google обещает давать приоритеты защищенным сайтам.

Как же перенести свой сайт на HTTP s? Ниже представлена пошаговая инструкция.

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

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

Смена ссылок внутренней перелинковки с абсолютных на относительные

Относительные ссылки бывают двух типов:

1. Относительные вне зависимости от домена

https://raybin.ru/about/ — абсолютная.
/about/ — относительная.

2. Относительные вне зависимости от протокола

https://raybin.ru/about/ — абсолютная
//raybin.ru/about/ — относительная

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

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

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

Проверьте, какой медиа-контент (изображения, видео, презентации, и др.) вы используете у себя на сайте и по какому протоколу его запрашиваете. Здесь необходимо тоже все перевести в относительные адреса, и тогда при переходе на HTTPS у вас медиа-контент также будет подгружаться с защищенных сайтов. Но стоит убедиться, что он действительно доступен по HTTPS .

Если используемые вами картинки хранятся на вашем сайте, то просто используйте относительные адреса //site.ru/img/mega-image.jpg . Если вы подгружаете картинки с внешних ресурсов ( CDN или других сайтов), то они также должны поддерживать HTTPS , иначе стоит отказаться от этих вложений.

Популярные сервисы, которые позволяют внедрять свой контент, типа YouTube, SlideShare, виджеты VK или Facebook, и другие, уже давно поддерживают HTTPS , поэтому с ними проблем не возникнет. Но если вы используете медиа-контент с непопулярных сервисов, то уточните, будет ли этот контент работать/отображаться, если вы смените протокол.

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

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

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

Нужно использовать:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

Также и с другими скриптами: Яндекс.Метрика, LiveInternet, Google Analytics, Яндекс.Директ, различные javascript библиотеки и др. Здесь принцип тот же: популярные сервисы и библиотеки поддержкивают HTTPS , а вот с непопулярными могут возникнуть проблемы (как например, у ПриватБанка или Корреспондента с сетью MediaTraffic, которые до сих пор её использует по небезопасному соединению).

Подготовительная работа может занять много времени, поэтому все эти исправления лучше делать до полного переноса сайта с HTTP на HTTPS . Если для некоторых проектов стоимость переноса зависит в большей степени от стоимости SSL -сертификата и 1 часа программиста, то у других проектов стоимость переноса как раз заключается в подготовительных работах, так как не все партнеры, которые помогают этим проектам монетизироваться, могут поддерживать защищенный HTTPS протокол.

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

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

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

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

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

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

3. Wildcard . Сертификаты, которые выдаются на все поддомены одного домена. Если у вас много региональных или других поддоменов, то обязательно нужно брать wildcard-сертификат.

4. С поддержкой IDN . Не все сертификаты поддерживаются для кириллических доменов. Если у вас кириллический домен, то нужно искать сертификаты с поддержкой IDN .

Подробнее о видах сертификатов можно ознакомиться в этой статье:
http://habrahabr.ru/company/tuthost/blog/150433/

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

Большинство хостеров предоставляют возможность через панель управления быстро установить выданный сертификат. Если у вас возникнут с этим проблемы, обратитесь в тех-поддержку хостинга или наймите на 1 час программиста. Установка обычно происходит пару минут, но при этом сам сервер должен поддерживать SSL протокол. Если у вас не популярный хостинг, то уточните у хостера, поддерживают ли они SSL и как вам можно установить сертификат.

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

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

Установив ssl-сертификат, убедитесь, что теперь сайт доступен по двум адресам, с http:// и https://. Если по какому-то адресу он оказался недоступным, то нужно срочно искать причину и решать эту проблему.

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

После успешной настройки сертификата на сервере можно заняться настройкой сайта. Здесь тоже придется попотеть.

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

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

Яндекс требует для новой версии сайта указать директиву Host в файле robots.txt, где явно прописать используемый протокол. Например, в моем robots это выглядит так:

Host: https://raybin.ru

Теперь Яндекс будет знать, что среди всех зеркал, указанное вами с протоколом HTTPS – самое главное.

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

Раньше (еще в начале года) требовалось ждать, пока Яндекс переклеит зеркала, и уже потом перенаправлять пользователей. Это могло плохо повлиять на трафик из Google. Сейчас не обязательно ждать работу зеркальщика Яндекса, а можно сразу настраивать 301 редирект с HTTP версии на HTTPS .

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

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

Если этот код не сработает, то обратитесь в техподдержку хостинга за консультацией.

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

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

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

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

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

И в Google и в Яндексе необходимо добавить и подтвердить новый сайт, указав версию https. Теперь у вас в списке сайтов будет и та и другая версии. Для Google дополнительных настроек больше делать не надо, достаточно присутствия 301 редиректов.

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

Для Яндекса необходимо у HTTP -сайта указать главное зеркало HTTPS . Делается это в панели для вебмастеров в меню “Настройка индексирования” — “Главное зеркало” — “Установить протокол HTTPS ”.

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

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

  • Настройки региона (геотаргетинг)
  • Файлы Sitemap.xml
  • Список ссылок в Disawov Tool для Google
  • Исключенные параметры URL для Google

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

На этом все, ваш сайт и ваши пользователи защищены. Google и Яндекс со временем поменяют адрес вашего сайта в поиске.

Сделайте заказ с сайта и получите 10% скидку на услугу

Заказ услуги с сайта raybin.ru

Нажимая на кнопку "Получить консультацию", я даю согласие на обработку персональных данных и соглашаюсь c условиями политики конфиденциальности
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.
Заказать бесплатную SEO-консультацию

Запрос бесплатной SEO - консультации с сайта raybin.ru

Нажимая на кнопку "Получить консультацию", я даю согласие на обработку персональных данных и соглашаюсь c условиями политики конфиденциальности
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.
Письмо в компанию Райбин

Письмо в компанию RAYBIN

Нажимая на кнопку "Получить консультацию", я даю согласие на обработку персональных данных и соглашаюсь c условиями политики конфиденциальности
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.