Переезд на HTTPS за три шага

Инструкция от команды студии веб-разработки VT Digital.

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

Готовимся к переезду

Ещё до смены протокола все внутренние абсолютные ссылки меняем на относительные. Например, для перехода на страницу на вашем же сайте лучше использовать <a href="/news/ "> вместо <a https://www.site.ru/news/">. Не забудьте исправить все ссылки на файлы, картинки, видео, виджеты и прочие внешние сервисы. Код «Яндекс.Метрики» и Google Analytics также должен подгружаться по относительному протоколу.

Чтобы настроить отслеживание реферального трафика, добавляем на HTTPS-страницах мета-тег <meta name="referrer" content="origin"> до закрывающего тега </head>.

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

Проверяем правильность настройки SSL-сертификата.

Переезжаем

Создаем версию сайта с HTTPS. Обе версии (HTTP и HTTPS) должны быть доступны и работать без ошибок. Файл robots.txt должен быть одинаков для обеих версий. Пока «Яндекс» не проведёт склейку зеркал, не настраивайте 301-редирект с HTTP.

В robots.txt указываем отдельно User-Agent: Yandex с Host: https:// и Sitemap: https://. Если приоритетная поисковая система для вас «Яндекс», то нужно закрыть сканирование всего сайта роботу Google, чтобы избежать дублей страниц в поиске Google.

Когда «Яндекс» полностью склеит страницы (в веб-мастере на неглавных зеркалах количество проиндексированных страниц будет равно нулю) и HTTPS будет выбрано главным зеркалом, открываем доступ Google в файле robots.txt. Если сервер на nginx, прописываем строки в .htaccess для доступности robots.txt по HTTP-протоколу:

<FilesMatch "robots.txt$">
RewriteEngine off
</FilesMatch>

Проверяем для HTTPS-версии протоколы в rel=”canonical”, rel=”alternate” и протокол ссылок в sitemap.xml. Для HTTPS-версии ссылки должны быть доступны по HTTPS. Для HTTP — в HTTP.

Тестируем

  1. Делаем 302-редирект с http:// на https:// на время теста.
  2. Добавляем обе версии сайта в «Яндекс.Вебмастер». Жмём «Настройка индексирования» — «Переезд сайта» и указываем предпочтительный протокол HTTPS. В «Структуре сайта» добавляем разделы сайта. В Google Search Console после склейки в «Яндексе» добавляем сайт с протоколом HTTPS и подтверждаем права. В разделе «Поисковый трафик» — «Таргетинг по странам и языкам» указываем, с какой страной связан домен, а в «Сканирование» — «Параметры URL» загружаем параметры из HTTP версии. Далее добавляем файл Disavow для HTTPS-версии по ссылке.
  3. Чтобы позиции по геозависимым запросам не просели, указываем в разделе «Региональность» регион для вкладки «Вебмастер».
  4. Меняем ссылки для региональных представительств, которые указаны в «Яндекс.Справочнике». Для этого пишем через форму в техподдержку «Яндекс.Справочника» о переезде на HTTPS.
  5. Ждём склейки в «Яндексе». Переклейка начинается примерно через две-три недели. Обратите внимание, что при переезде обнуляется тИЦ. Ничего страшного в этом нет, как сообщает «Яндекс» он вернётся после следующего обновления, которое происходит примерно раз в месяц.
  6. Когда «Яндекс.Вебмастер» покажет, что зеркала связаны, и основным уже выбрана HTTPS-версия, можно настраивать 301-постраничный редирект, кроме файла robots.txt и страницы 404 ошибки.
  7. Проверяем корректность присвоенного региона в «Яндексе» после переклейки. Если возникают проблемы с присвоением регионов, пишем в техподдержку.
  8. Проверяем смешанное содержимое — у всех страниц сайта протокол HTTPS. Это можно сделать через ScreamingFrog или подобную программу.

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

Во время склейки зеркал трафик может просесть. Это происходит из-за того, что поисковики воспринимают сайт с HTTPS как новый. Когда HTTPS-версия будет признана главным зеркалом, о чём вебмастер получит уведомление, все показатели HTTP-версии начнут учитываться для HTTPS.

0
70 комментариев
Написать комментарий...
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Serge Arsentiev

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

Ответить
Развернуть ветку
Роман Поляков

Горе cms, если она хранит не относительные ссылки к картинкам и прочим файлам.

Ответить
Развернуть ветку
Serge Arsentiev

Это отлично, но как добавить сертификат, в Drupal, например, хотелось бы услышать. Или в эти Wix сайты, которых много.
Мы отлично лезем в .htaccess и так далее, но как дать CMS понять, что теперь надо все ссылки переделать с http на https ?

Ответить
Развернуть ветку
Роман Поляков

Я же написал, если ссылка относительная, то ничего CMS понимать не надо, браузер сам подставит с https. Большинство даже бесплатных CMS имеют интерфейс, позволяющий легко перейти на https в случае если пути хранятся с доменом. На счет Wix, если не ошибаюсь, то это конструктор сайтов. Если да, то тут все полностью зависит от интерфейса, который они предоставляют, и если там нет возможность подключения https, то увы.

Ответить
Развернуть ветку
67 комментариев
Раскрывать всегда