Проверка редиректа на HTTPS
Поисковые системы, включая Google и Яндекс, отдают предпочтение сайтам, работающим по защищённому протоколу HTTPS. Если ваш сайт доступен по обоим протоколам без редиректа, поисковики могут индексировать обе версии как разные страницы, что негативно влияет на ранжирование. Корректный редирект с HTTP на HTTPS объединяет весь трафик и ссылочный вес на одном адресе.
Браузеры предупреждают о небезопасном соединении при использовании HTTP. Посетители, перешедшие по старым ссылкам, увидят предупреждение, что снижает доверие к сайту и увеличивает показатель отказов.
Безопасность данных
HTTPS шифрует трафик между браузером и сервером, защищая данные от перехвата в публичных сетях
SEO и ранжирование
Google и Яндекс отдают предпочтение сайтам с HTTPS, редирект передаёт SEO-вес
HSTS Preload
Для включения в списки HSTS Preload требуется корректный редирект с кодом 301
Как это работает
При включённой проверке редиректа StatusCheck выполняет дополнительный HTTP-запрос к вашему сайту, заменяя протокол на HTTP. Система анализирует ответ сервера и проверяет, что он содержит корректное перенаправление на HTTPS-версию.
Что проверяет StatusCheck
HTTP-версия возвращает 3xx код. Сервер должен ответить кодом перенаправления (301, 302, 307 или 308) на запрос по HTTP.
Заголовок Location указывает на HTTPS. В ответе сервера должен присутствовать заголовок Location, содержащий URL с протоколом HTTPS. Проверка регистронезависимая — корректно обрабатываются варианты HTTPS://, Https:// и другие.
Безопасность цели редиректа. Система проверяет, что адрес в заголовке Location не ведёт на внутренние или приватные IP-адреса, обеспечивая защиту от SSRF-атак.
Настройка в StatusCheck
Проверка редиректа на HTTPS является дополнительной опцией HTTP монитора. Для её включения достаточно активировать соответствующий чекбокс в настройках монитора.
При включении опции StatusCheck автоматически формирует HTTP-версию URL на основе адреса, указанного в мониторе. Например, если монитор настроен на https://example.com/page, проверка редиректа будет выполняться для http://example.com/page.
Параметры
Проверка редиректа HTTPS имеет один параметр, управляющий её включением.
| Параметр | Описание | Допустимые значения | По умолчанию |
|---|---|---|---|
check_redirect_https |
Включить проверку редиректа с HTTP на HTTPS | true / false |
false |
Коды редиректа
HTTP-спецификация определяет несколько кодов статуса для перенаправлений. Все они принимаются StatusCheck как корректные для проверки редиректа на HTTPS.
301 — Постоянный редирект
Постоянный редирект. Браузеры кэшируют, передаёт максимальный SEO-вес. Рекомендуется
302 — Временный редирект
Временный редирект. Браузеры не кэшируют, потеря SEO-веса
307 — Временный с сохранением метода
Временный с сохранением метода запроса. Применяется редко
308 — Постоянный с сохранением метода
Постоянный с сохранением метода. Рекомендуется для API с POST/PUT
Рекомендуется код 301. Он корректно обрабатывается всеми браузерами и поисковыми системами, передаёт SEO-вес на HTTPS-версию и кэшируется для ускорения последующих запросов.
Типичные проблемы
Цикл редиректов
Циклический редирект возникает, когда HTTP перенаправляет на HTTPS, а HTTPS обратно на HTTP. Браузер показывает ошибку ERR_TOO_MANY_REDIRECTS.
Решение: проверьте настройки X-Forwarded-Proto или аналогичного заголовка, передающего информацию о протоколе от балансировщика к приложению.
Неверный адрес назначения
Редирект ведёт на некорректный адрес: другой домен, отсутствующую страницу или HTTP вместо HTTPS. StatusCheck обнаружит эту проблему, если заголовок Location не содержит HTTPS.
Отсутствие нормализации www
Сайт доступен по четырём адресам: http://example.com, https://example.com, http://www.example.com, https://www.example.com. Без нормализации это создаёт проблемы для SEO.
Смешанный контент (Mixed Content). Редирект работает корректно, но на HTTPS-странице загружаются ресурсы по HTTP. Браузеры блокируют такой контент или показывают предупреждение.