Деликатнейший переезд на HTTPS: как не потерять трафик в Яндекс и Google

1. Подготавливаем сам сайт к переезду. Необходимо заменить все ссылки в коде сайта, в том числе на изображения, видео, виджеты, скрипты, файлы на относительные или абсолютные с явным указанием протокола. Чаще всего большинство современных CMS генерируют относительные ссылки на всем сайте (за исключением вставленных Вами вручную в редакторе) и специальных действий производить не нужно.

2. Устанавливаем сертификат. Теперь Ваш сайт доступен и с http, и с https.

3. В robots.txt в директиве указываем:

Host: https://site.ru/

Эта строчка означает, что главным зеркалом является https-версия сайта.

Sitemap: https://site.ru/sitemap.xml (в файле также необходимо заменить протокол ссылок на https)

4. Также обязательно проверяем для https-версии:

Протокол в rel=”canonical” (используется для указания на каноническую версию страницы)

Протокол в rel=”alternate” (используется для указания на страницы других языковых версий либо на мобильную версию сайта)

Протокол ссылок в sitemap.xml

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

5. Добавляем в Яндекс.Вебмастер обе версии сайта: http и https. Указываем в разделе «Настройка индексирования – Переезд сайта» предпочтительный протокол.

6. Добавляем сайт в Google Search Console с протоколом https и подтверждаем права. Google понимает, что http и https это разные протоколы одного и того же сайта. Если Google обнаружит работающий протокол https, то он по мере переиндексации контента будет заменять http на https даже без перенаправления и добавления https-версии в Google Search Console.

Google при доступности обеих версий по умолчанию начинает показывать https-версию в выдаче, в Яндекс – после переклейки (обычно происходит за 1-2 недели)

7. Ждем склейки в Яндексе. Это произойдет, когда версии страниц сайта с https зайдут в индекс, а версии страниц сайта с http выпадут из индекса. (Придет уведомление о смене главного зеркала)

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

Для перенаправления c http:// на https:// в .htaccess добавляем :

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

Альтернативный вариант:

RewriteEngine on
RewriteCond %{ENV:HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]

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