Краткий ответ: Добавьте постоянный (301) редирект в веб-сервере, чтобы каждый http://-запрос попадал на https://. В nginx это маленький catch-all server-блок; в Apache — директива Redirect или две строки rewrite. Плагины certbot могут добавить это за вас при установке сертификата.

Обзор

Параллельная работа обоих протоколов размывает SEO-сигналы и оставляет пользователей на незащищённой версии. Один 301-редирект сводит всё на HTTPS и является ожидаемой настройкой любого современного сайта.

Что нужно иметь

  • Уже установленный валидный сертификат (как) — редирект на сломанный HTTPS заблокирует посетителей.
  • SSH-доступ для правки конфигурации веб-сервера.

Пошаговая инструкция

nginx — отдельный server-блок для порта 80:

server {
    listen 80;
    listen [::]:80;
    server_name example.com www.example.com;
    return 301 https://$host$request_uri;
}
sudo nginx -t && sudo systemctl reload nginx

Apache — в virtual host порта 80:

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    Redirect permanent / https://example.com/
</VirtualHost>
sudo apachectl configtest && sudo systemctl reload apache2

Проверьте редирект:

curl -I http://example.com   # expect: HTTP/1.1 301 ... Location: https://example.com/

По желанию добавьте HSTS, когда всё работает, — чтобы браузеры вообще не пробовали HTTP при повторных визитах:

add_header Strict-Transport-Security "max-age=31536000" always;

Типичные проблемы

  • Петля редиректов: приложение тоже форсит протокол (или стоит за прокси) — сделайте ответственным за редирект ровно один слой.
  • Редиректит только голый домен: в server_name/ServerAlias не хватает хоста www.
  • HSTS включён слишком рано: с неисправленным mixed content HSTS запирает пользователей на сломанной странице — включайте последним.

Когда обращаться в поддержку

Если curl -I вообще не получает ответа на порту 80 — сначала проверьте файрвол; если всё равно глухо, откройте тикет с куском конфига — посмотрим.

Частые вопросы

Редирект должен быть 301 или 302?

Используйте 301 (постоянный). Он говорит браузерам и поисковикам, что канонический URL — HTTPS, передаёт SEO-сигналы и кешируется, так что повторные визиты идут сразу на HTTPS.

Что вызывает петлю редиректов после включения HTTPS?

Два слоя одновременно форсят протокол — например, веб-сервер редиректит на HTTPS, а приложение или прокси возвращает обратно. Сделайте ответственным за редирект ровно один слой.

Что такое HSTS и стоит ли его включать?

HSTS — заголовок, велящий браузерам всегда использовать HTTPS для вашего домена, не пробуя HTTP. Включайте после полной проверки HTTPS — откатить его сложно.

Похожие статьи

Готовы начать? Заказать VPS в Cloud2Y →

Помог ли вам данный ответ? 0 Пользователи нашли это полезным (0 голосов)