Главная/Установка/Редирект на https
Редирект на https: правила для Nginx, Apache и .htaccess
Редирект на https переводит посетителей со старого адреса http на защищённый и делается постоянным ответом с кодом 301. Правило пишут в конфиге веб-сервера или в файле .htaccess, а после настройки обязательно проверяют результат командой curl.
Ответ за 30 секунд
Ответ должен быть 301 и с первого шага вести на https с тем же путём и параметрами. Сначала сертификат, потом редирект. Если включить редирект раньше сертификата, посетители увидят ошибку вместо сайта.
Редирект работает, когда на домене стоит действующий сертификат: бесплатный Let's Encrypt или платный, выпуск от 15 минут.
Как настроить редирект на https в WordPress и IIS301код постоянного редиректа
3строки правила в .htaccess
1переход без цепочек
01 · 1 мин
Как сделать редирект с http на https в Nginx#
Порт 80 обслуживает отдельный короткий блок server, который ничего не отдаёт, а только отправляет посетителя дальше.
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com;
return 301 https://example.com$request_uri;
}
Переменная $request_uri сохраняет путь и параметры запроса. Если все адреса надо оставлять как набраны, возьмите вместо домена переменную $host. Блок для порта 443 с сертификатом описан в SSL на Nginx.
Если сертификат ставит Certbot, он умеет добавить редирект сам: флаг --redirect в команде certbot --nginx включает автоматическую переадресацию, а --no-redirect её запрещает.
02 · 1 мин
Как сделать редирект на https в Apache и в .htaccess#
В основном конфиге Apache редирект ставят в виртуальном хосте порта 80:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
Redirect permanent / https://example.com/
</VirtualHost>
На виртуальном хостинге доступа к конфигу нет, поэтому те же действия выполняет модуль mod_rewrite. Положите правило в самое начало .htaccess, выше правил CMS:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Если перед Apache стоит прокси, он принимает https сам и передаёт Apache обычный http, поэтому условие по %{HTTPS} срабатывает на каждый запрос и сайт уходит в цикл. В такой схеме проверяют заголовок X-Forwarded-Proto:
RewriteCond %{HTTP:X-Forwarded-Proto} !https
Полная настройка виртуального хоста с сертификатом: SSL на Apache.
Инструмент · 1 мин
Как настроить редирект на https в WordPress и IIS#
В WordPress достаточно сменить в настройках оба адреса на https и добавить серверное правило выше, отдельный плагин не нужен. Порядок и работа со ссылками в базе: SSL на WordPress.
В IIS редирект делает модуль URL Rewrite: правило добавляют в секцию system.webServer файла web.config.
<rule name="HTTP to HTTPS" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
Правило помещают внутрь элемента <rewrite><rules>. Привязку https и сертификат настраивают отдельно: SSL на IIS.
Где вам настроить редирект на https
Выберите, на чём работает сайт, и получите место для правила
04 · 1 мин
Как проверить, что редирект с http на https работает#
Браузер кэширует постоянные редиректы, поэтому проверяйте из консоли. Команда показывает только заголовки ответа:
curl -I http://example.com/page/?id=5
В ответе должна быть строка 301 Moved Permanently и заголовок Location с адресом на https, где сохранились путь и параметры. Затем проверьте цепочку: ключ -L заставляет curl идти по переадресациям.
curl -IL http://www.example.com/
Хороший результат: один переход на итоговый адрес. Если вы видите два перехода, например сначала на https с www, а затем на https без него, объедините правила в одно. Остальные способы проверки сайта: проверка SSL.
05 · 1 мин
Почему после редиректа на https сайт не открывается#
| Симптом | Причина | Решение |
|---|---|---|
| «Слишком много перенаправлений» | Два редиректа спорят или прокси скрывает https от сервера | Оставьте одно правило, проверьте заголовок X-Forwarded-Proto |
| Ошибка сертификата сразу после редиректа | Сертификата на домене ещё нет или он на другое имя | Отключите редирект, поставьте сертификат: установка SSL |
| Сайт открылся, но замка нет | На странице остались ссылки http | Смешанный контент |
| В поиске остались адреса http | Редирект временный (302) или нет канонических ссылок | Поставьте 301, обновите sitemap |
06 · 1 мин
Вопросы о редиректе на https#
Какой код ответа нужен для редиректа с http на https?
301, постоянный редирект. Он сообщает поисковикам, что страница переехала навсегда, и они переносят сигналы на адрес с https.
Как сделать редирект на https через .htaccess?
Включить RewriteEngine, добавить условие RewriteCond %{HTTPS} off и правило RewriteRule с флагами L и R=301. Всё это кладут в начало .htaccess.
Можно ли обойтись без редиректа на https, если сертификат уже есть?
Сайт будет открываться и по http, и по https, а поисковики посчитают их разными адресами. Редирект сводит их в один защищённый.
Нужно ли включать HSTS вместе с редиректом на https?
Не обязательно. HSTS запоминается браузером на срок max-age, поэтому включайте его, когда редирект проверен, и начните с небольшого значения.
Почему этому можно верить
Как мы проверяли
Источники цифр на этой странице: SSL-сертификаты Таймвеб, timeweb.com/ru/services/domains/ssl, проверено 19 октября 2026; Let's Encrypt: документация, letsencrypt.org/docs, проверено 19 октября 2026.
Подключите SSL к сайту
От бесплатного Let's Encrypt до платных сертификатов GlobalSign с гарантийной выплатой и установкой под ключ. Любой можно вернуть за 7 дней.
- Бесплатный Let's Encrypt на домен
- Платные от 1 000 ₽ за 6 месяцев
- Wildcard на все поддомены
- 7 дней на возврат