Переход сайта на HTTPS: пошагово и без потери позиций
Переход на HTTPS — это не только установка сертификата. Для поисковиков http://site.ru и https://site.ru — два разных сайта, поэтому переезд делают как смену адреса: ставят сертификат, настраивают 301-редирект со всех старых адресов на новые, меняют внутренние ссылки и canonical, обновляют robots.txt и карту сайта, сообщают о переезде Яндексу и Google и правят адрес в Метрике и рекламе. Если сделать всё за один заход, позиции обычно сохраняются, а склейка версий в поиске занимает несколько недель. Ниже — порядок шагов, где каждый выполняется, как проверить и что часто забывают.
Зачем переезжать на HTTPS и что будет, если не переезжать
HTTPS — тот же протокол передачи страниц, но с шифрованием: данные между браузером и сервером нельзя прочитать или подменить по дороге. Сертификат подтверждает, что вы — владелец домена, а браузер рисует замок в адресной строке.
- Браузеры пугают посетителей. Сайт без HTTPS помечается как «Не защищено», а на странице с формой ввода предупреждение становится заметнее. Люди закрывают такие сайты, особенно когда просят телефон или оплату.
- Поисковики учитывают протокол. И Яндекс, и Google давно называют HTTPS предпочтительным протоколом и при прочих равных отдают предпочтение защищённой версии. Это не главный фактор ранжирования, но и терять его незачем.
- Без HTTPS не работают современные функции. Геолокация, уведомления, часть API браузера, HTTP/2 доступны только на защищённых страницах. Платёжные системы тоже требуют HTTPS для форм оплаты.
- Реклама и агрегаторы. Рекламные кабинеты и маркетплейсы всё чаще отказываются принимать ссылки на незащищённые страницы.
Сегодня сайт без HTTPS — редкость, но переезд по-прежнему актуален для старых сайтов компаний, которые «работают и ладно», и для случаев, когда сертификат стоит, а редиректы и ссылки так и не настроены — то есть сайт живёт в двух версиях одновременно.
Что нужно до начала: сертификат и подготовка
Сертификат выпускают на домен, устанавливают на сервер и продлевают по сроку. Для большинства сайтов малого бизнеса хватает бесплатного сертификата Let's Encrypt: на хостинге с панелью он ставится одной кнопкой и продлевается автоматически. Платные сертификаты нужны, когда требуется проверка организации или гарантии от центра сертификации. Какой выбрать, разобрано в статье SSL-сертификат: бесплатный или платный, а как не остаться без сертификата через три месяца — в материале про автопродление Let's Encrypt.
Перед переездом сделайте три вещи: резервную копию сайта и базы, список всех поддоменов, которым тоже нужен сертификат (например, www, shop, cdn), и выгрузку текущих позиций и списка проиндексированных страниц из Вебмастера — чтобы после переезда было с чем сравнивать.
Выбирайте и главное зеркало сразу — с www или без. Если у сайта до сих пор две версии открывались одинаково, переезд — повод это исправить: в итоге у сайта должен остаться один основной адрес, например https://site.ru, а три остальных варианта (http://site.ru, http://www.site.ru, https://www.site.ru) — перенаправлять на него.
Переход на HTTPS по шагам
- Установите сертификат на сервер для домена и всех нужных поддоменов. Откройте сайт по
https://вручную и убедитесь, что он отдаётся без ошибки сертификата. - Проверьте сайт по HTTPS целиком: главная, каталог, формы, оплата, админка. На этом этапе редирект ещё не включён, и обе версии работают параллельно — это нормально на день-два.
- Замените внутренние ссылки, адреса картинок, стилей и скриптов с
http://site.ru/...на относительные (/...) или наhttps://. В CMS это делается поиском с заменой по базе данных; в WordPress есть плагины для замены адресов, в других системах — SQL-запрос или инструмент разработчика. - Обновите canonical на всех страницах: он должен указывать на HTTPS-версию. Проверьте и другие абсолютные адреса в шаблоне: Open Graph, hreflang, микроразметка.
- Обновите карту сайта: все адреса в
sitemap.xml— сhttps://. Вrobots.txtисправьте строкуSitemap:. Как устроены оба файла, мы разбирали в статье про robots.txt и sitemap.xml. - Включите 301-редирект: с
http://наhttps://постранично, с сохранением пути и параметров, и одновременно с неглавного зеркала (сwwwили без) на главное. Редирект должен вести на конечный адрес за один переход, а не цепочкой. - Убедитесь, что на страницах нет смешанного контента: браузер показывает замок без предупреждений на всех типах страниц.
- Сообщите о переезде поисковикам: в Яндекс Вебмастере — через инструмент переезда сайта, в Google Search Console — добавьте HTTPS-версию как новый ресурс и отправьте карту сайта.
- Обновите адрес сайта в Метрике и Google Analytics, ссылки в рекламных кампаниях, в Яндекс Бизнесе, соцсетях и на всех площадках, где указан сайт.
- Через несколько недель, когда поисковики склеят версии, при желании включите HSTS.
Как настроить редиректы
На виртуальном хостинге с Apache редирект прописывают в файле .htaccess в корне сайта; на Nginx — в конфигурации сервера, куда обычно есть доступ через панель или у поддержки хостинга. Часто в панели хостинга есть готовый переключатель «Перенаправлять на HTTPS» — этого достаточно, если он делает именно 301 и сохраняет путь.
Правильно настроенный редирект отвечает на запрос http://www.site.ru/uslugi/?utm_source=x одним переходом на https://site.ru/uslugi/?utm_source=x. Проверить это можно нашим инструментом проверки редиректов: он покажет код ответа и всю цепочку. А если нужен готовый шаблон правил, поможет генератор .htaccess.
Про типы редиректов, карту переадресаций и ошибки, из-за которых теряют трафик при любом переезде, — отдельная статья 301 редирект. Здесь важно одно: только 301, только на конечный адрес, только постранично. Редирект всех страниц на главную для поисковика равен удалению этих страниц.
Смешанный контент: почему замка нет, хотя сертификат стоит
Смешанный контент — ситуация, когда сама страница открыта по HTTPS, а какая-то картинка, стиль, скрипт или шрифт подгружается по HTTP. Браузер либо блокирует такой элемент, либо убирает замок и показывает предупреждение. Самые частые источники: абсолютные адреса картинок в старых текстах, сторонние виджеты и счётчики, подключённые по HTTP, шрифты и библиотеки из старых шаблонов.
Найти проблему помогает консоль инструментов разработчика браузера: в ней перечислены заблокированные адреса. Как искать и чинить такие элементы на разных CMS, подробно разобрано в статье смешанный контент после установки SSL — здесь не повторяем.
Переезд в Яндекс Вебмастере и Google Search Console
Для поисковиков две версии сайта нужно склеить, иначе часть страниц какое-то время будет в индексе по старому адресу, а часть — по новому, и позиции поплывут. У Яндекса и Google процедура разная.
Яндекс Вебмастер
В Вебмастере добавьте HTTPS-версию как отдельный сайт и подтвердите права. Затем в разделе с настройками индексирования есть инструмент для переезда сайта: там указывают, что сайт переехал на HTTPS, и Яндекс постепенно переносит на новый адрес накопленные показатели. Обязательное условие — рабочий 301-редирект со старой версии. Ход переезда виден в самом кабинете; обычно склейка занимает несколько недель. Какие ещё разделы там стоит смотреть, мы описали в статье про Яндекс Вебмастер.
Google Search Console
Google не требует отдельной заявки на переезд с HTTP на HTTPS: он считает смену протокола сменой адреса и ориентируется на редиректы и canonical. Что нужно сделать: добавить HTTPS-версию как новый ресурс (либо использовать ресурс на уровне домена, который покрывает все протоколы и поддомены), подтвердить права и отправить новую карту сайта. Старый ресурс не удаляйте — по нему удобно следить, как снижается число страниц на HTTP.
Что обновить помимо сайта
| Шаг | Где делается | Как проверить |
|---|---|---|
| Сертификат установлен | Панель хостинга или сервер | Сайт открывается по https без предупреждений, замок на всех страницах |
| Редирект http → https и www | .htaccess, конфиг Nginx или переключатель в панели | Инструмент проверки редиректов: код 301, один переход, путь сохранён |
| Внутренние ссылки и адреса файлов | База данных и шаблоны CMS | Поиск по коду страниц строки http://site.ru не находит ничего |
| Canonical, Open Graph, hreflang | Шаблон сайта или SEO-плагин | В исходном коде страницы все адреса с https |
| robots.txt и sitemap.xml | Корень сайта | Открываются по https, внутри только адреса с https |
| Переезд в Яндексе | Вебмастер, инструмент переезда | Статус переезда в кабинете, рост страниц на https в поиске |
| Новый ресурс в Google | Search Console | Отчёт индексирования показывает страницы https |
| Счётчик Метрики и Analytics | Настройки счётчика | В настройках указан адрес с https, данные идут |
| Реклама | Яндекс Директ, другие кабинеты | Ссылки объявлений ведут сразу на https без редиректа |
| Внешние площадки | Яндекс Бизнес, карты, соцсети, справочники | Адрес сайта обновлён |
| Интеграции и API | CRM, платёжные системы, вебхуки | Адреса возврата и уведомлений заменены на https |
Пункт про интеграции часто упускают. Платёжная система отправляет уведомление об оплате на адрес с HTTP, редирект её не устраивает — и заказы перестают помечаться оплаченными. То же с CRM, сервисами рассылок и доставкой: в их настройках адрес вашего сайта нужно поменять руками.
HSTS: включать ли и когда
HSTS — заголовок, которым сервер говорит браузеру: «в ближайший год открывай этот сайт только по HTTPS, даже если человек набрал http». После первого визита браузер сам не даст зайти на незащищённую версию. Это защищает от подмены трафика и убирает лишний редирект.
Включать HSTS нужно с осторожностью и не в день переезда. Если потом сертификат истечёт или какой-то поддомен окажется без HTTPS, браузер не предложит «всё равно перейти» — сайт просто не откроется, пока не истечёт срок заголовка. Поэтому сначала убеждаются, что автопродление работает и все поддомены под сертификатом, затем включают HSTS с коротким сроком (часы или дни), и только потом — на год. Параметр includeSubDomains добавляют, если уверены, что у каждого поддомена есть сертификат.
Сколько ждать и как понять, что переезд прошёл
Склейка версий в поиске — не мгновенная. Обычно на неё уходит несколько недель: поисковик должен переобойти страницы по старому адресу, увидеть редиректы и заменить их в индексе. В это время возможны небольшие колебания позиций и трафика — это нормально, если редиректы и ссылки настроены верно. Резкое падение на десятки процентов — сигнал, что что-то сломано: редирект ведёт не туда, часть страниц отдаёт ошибку, canonical указывает на HTTP.
Признаки завершённого переезда: в Вебмастере переезд отмечен как выполненный и главным зеркалом стала HTTPS-версия; в Search Console число проиндексированных страниц в новом ресурсе выросло до прежнего уровня, а в старом упало почти до нуля; в выдаче по названию компании показывается адрес с https; в Метрике трафик вернулся к прежним значениям.
Частые ошибки при переходе на HTTPS
- Сертификат стоит, редиректа нет. Сайт годами живёт в двух версиях, поисковики видят дубли, ссылочный вес делится пополам.
- Редирект 302 вместо 301. Временный редирект не передаёт сигналы поисковику, и старая версия остаётся в индексе.
- Цепочка редиректов.
http://www→http://→https://→https://www. Каждый лишний шаг замедляет загрузку и теряет часть веса. Должен быть один переход на конечный адрес. - Редирект на главную. Все старые адреса ведут на
https://site.ru/. Для поисковика это удаление внутренних страниц со всей их историей. - Canonical остался на HTTP. Редирект ведёт на HTTPS, а страница говорит «моя основная версия — HTTP». Поисковик получает противоречие.
- Сертификат только на домен без www. Пользователь набирает
www.site.ruи получает ошибку сертификата до того, как сработает редирект. - Забыли robots.txt. Старый robots закрыл сайт от индексации на время работ, а после переезда его так и не открыли.
- HSTS включили в первый день. Через три месяца сертификат не продлился, и сайт закрылся для всех, кто на нём уже был.
- Не обновили интеграции и рекламу. Реклама ведёт на HTTP с лишним редиректом, платёжные уведомления не доходят.
Чек-лист после переезда
- Все страницы открываются по https, замок без предупреждений, включая страницы с формами и оплатой.
- Редирект с http и с неглавного зеркала — 301, один переход, путь и параметры сохраняются.
- В коде страниц нет адресов с http://site.ru, canonical и Open Graph указывают на https.
- sitemap.xml содержит только https-адреса, robots.txt открыт для индексации и ссылается на новую карту.
- В Яндекс Вебмастере запущен переезд, https-версия добавлена и подтверждена.
- В Google Search Console добавлен https-ресурс, отправлена карта сайта.
- Адрес сайта обновлён в Метрике, Analytics, рекламных кабинетах, Яндекс Бизнесе и соцсетях.
- В CRM, платёжных системах и других интеграциях адреса заменены на https.
- Автопродление сертификата проверено, есть уведомление об истечении.
- Через две-четыре недели сверены позиции и трафик с выгрузкой до переезда.
- HSTS включён только после стабилизации, сначала с коротким сроком.
Коротко
Переход на HTTPS — это переезд сайта на новый адрес: сертификат, постраничный 301-редирект на одно главное зеркало, замена ссылок и canonical, новые robots и sitemap, переезд в Вебмастере и новый ресурс в Search Console, обновление Метрики, рекламы и интеграций. Сделанный за один заход, он проходит без потери позиций; склейка занимает несколько недель. HSTS — в последнюю очередь и осторожно.
Если сертификата ещё нет или непонятно, какой нужен вашему сайту, посмотрите SSL-сертификаты CasperLab — поможем выбрать, установить и настроить переезд без простоя.
Выбрать SSL-сертификат в CasperLab
Поможем подобрать решение под вашу задачу и рассчитаем стоимость без обязательств.
Выбрать SSL-сертификат