Seopult Cybermarketing Click.ru Seopult TV Trustlink Webartex.ru UpToLike.ru Blog.Seopult.ru Форум
27 июня 2017

How to: Как правильно перейти с http на https?

Плюсануть
Поделиться
Отправить
Класснуть
Линкануть

Массовый переход на https начался в 2014 году после того, как представители Google заявили, что сайты, обеспечивающие надежную передачу данных, получат дополнительные «баллы» при ранжировании. Несмотря на то, что Яндекс пока еще не сделал https фактором ранжирования, он все же рекомендует использовать именно этот протокол. Но переход на https связан с большой проблемой — из-за некорректных действий возможна потеря трафика и позиций. Сегодня вы узнаете, как перейти на https быстро и без потерь.

1. Подготовительная работа

Прежде чем переходить на https, желательно подготовить сайт. Сначала необходимо заменить внутренние абсолютные ссылки относительными. Есть несколько типов относительных ссылок. Google советует использовать protocol-relative ссылки. Например, если у вас была ссылка:

http://site.ru/blogpost1.html

то protocol-relative ссылка будет иметь вид:

//site.ru/blogpost1.html

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

http://site.ru/image1.jpg

то protocol-relative ссылка будет такой:

//site.ru/image1.jpg

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

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

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

вместо:

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

По этой же схеме необходимо изменить ссылки на другие скрипты (счетчики аналитики, партнерские программы и т. п.).

Указанные действия надо проводить только на собственном сайте — обратные ссылки из внешних источников оставляем без изменений.

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

По уровню защиты SSL бывают трех типов:

  • Domain Validated. Такие сертификаты стоят от $10-12 в год. Они выдаются физическим и юридическим лицам только для одного домена. Проверяется лишь принадлежность домена тому, кто заказал сертификат.
  • Organization Validated. Сертификаты выдаются только юрлицам. Стоимость уже составит от $40-50 в год. Проверке подлежат документы о государственной регистрации и принадлежность домена.
  • Extended Validation. Использование этого сертификата позволяет получить зеленую строчку с названием компании в браузере. Стоимость — от $130 в год. В этом случае проводится наиболее тщательная проверка компании, поэтому такой сертификат вызывает наибольшее доверие.

Также SSL-сертификаты различаются по функциональности. Они могут быть обычными (только для 1 домена), Wildcard (если требуется установка https на субдоменах) и SAN (для нескольких доменов), с поддержкой IDN (для кириллических доменов).

Основные поставщики SSL-сертификатов — GlobalSign, Comodo, Thawte, GeoTrust, Symantec, Trustwave. Купить их предлагает большинство хостинг-провайдеров. Они выдаются на срок от 1 до 3-х лет. Каждый провайдер прилагает подробную инструкцию по установке SSL.

После установки проверить корректную настройку SSL можно с помощью сервиса SSL Server Test. Добавляете адрес сайта, и если все в порядке, то результат проверки будет иметь вид:

How to: Как правильно перейти с http на https?

Рекомендуем проверить вручную сайт в разных браузерах и на разных устройствах (ПК, планшетах, мобильных и т. д.), чтобы исключить некорректное отображение.

3. Склеиваем зеркала

После установки SSL адрес сайта будет начинаться с https, но в индексе поисковых систем все еще остается сайт с http. Для Яндекса это два разных сайта, поэтому нужно указать главное зеркало, чтобы он правильно переиндексировал сайт.

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

Host: site.ru

на

Host: https://site.ru

Аналогично исправьте директиву:

Sitemap: http://site.ru/sitemap.xml

на

Sitemap: https://site.ru/sitemap.xml

Далее переходим в Яндекс.Вебмастер, открываем раздел «Индексирование» / «Переезд сайта» и устанавливаем галочку напротив «Добавить HTTPS» и нажимаем «Сохранить».

How to: Как правильно перейти с http на https?

Остается ждать переиндексации, которая начинается через 2-3 недели после сохранения изменений. Как только главное зеркало будет изменено, об этом придет сообщение в Яндекс.Вебмастере. Если в процессе склейки обнулится тИЦ, переживать не стоит — через пару апдейтов все вернется на свои места.

Далее зайдите в Google Search Console и добавьте версию сайта с https. В отличие от Яндекса, Google понимает, что адреса с http и https ведут на один и тот же сайт, и отдает приоритет при индексировании именно страницам с https.

4. Настраиваем 301 редирект

Для того чтобы при переходе на https сохранились позиции сайта и трафик, необходимо настроить 301 редирект. Здесь есть нюанс. Яндекс не рекомендует настраивать редирект до того момента, пока полностью не склеятся зеркала, а нужный домен будет признан главным зеркалом. Но в этом случае возможны проблемы с трафиком в Google. Поэтому проанализируйте, какой поисковик для вас в приоритете, и если это Яндекс, то лучше подождать, а если Google, то делайте редирект сразу.

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

Для настройки редиректа надо открыть файл .htaccess — он располагается в корневой папке сайта. Сделать это можно с помощью FTP-клиента типа FileZilla или любого другого. Если файла .htaccess нет, то его надо создать.

Добавьте в файл такие строки:

RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Если этот редирект не сработает, попробуйте такой вариант:

RewriteEngine On
RewriteCond %{HTTPS} =on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

Если и теперь ничего не вышло, и имеет место циклическая переадресация, то есть третий вариант:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

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

Редирект с помощью .htaccess работает только для хостинга на Linux (для веб-серверов Apache). Если у вас хостинг на 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>

По окончании всех этих манипуляций надо проверить, все ли внутренние ссылки корректны. Обратите внимание, чтобы протоколы ссылок в rel=”canonical”, rel=”alternate”, sitemap.xml были именно https. Кроме того, после склейки проверьте, правильно ли в Яндексе указан геотаргетинг. Если регион не определяется, надо написать в техподдержку для ручного исправления.

Если все сделано верно, то через пару месяцев зеркала полностью склеятся, страницы с http выпадут из индекса, а трафик, если была просадка, восстановится.

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

Плюсануть
Поделиться
Отправить
Класснуть
Линкануть

Давайте это обсудим

Расписание вебинаров и
мастер-классов
22 августа 2017 Вторник 13:00
Дмитрий Климчуков
Контекстная реклама: продвинутый курс
23 августа 2017 Среда 12:00
Михаил Смолянов
Финансовая грамотность для основателя бизнеса
23 августа 2017 Среда 13:00
Ксения Климчукова
Продвижение в Facebook и Instagram
24 августа 2017 Четверг 13:00
Евгений Костин
SEO: продвинутый курс