#nginx #https
#nginx #https
Вопрос:
Я настраиваю конфигурацию nginx.
- Включен HTTPS / HTTP2.
- Весь трафик должен быть перенаправлен на HTTPS.
- Все www-запросы должны перенаправляться на не-www (голый домен).
Моя текущая настройка выглядит более или менее так:
server {
listen 80 default_server;
listen 443 http2 ssl;
server_name www.domain.com;
return 301 https://$host$request_uri;
}
server {
listen 443 http2 ssl;
server_name localhost domain.com;
(...)
}
Я протестировал следующий сценарий:
- http://domain.com — 301 перемещен на постоянной основе (ОК)
- http://www.domain.com — 301 перемещен на постоянной основе (ОК)
- https://domain.com — 200 (НОРМАЛЬНО)
- https://www.domain.com — 200 (СБОЙ: ожидаемый 301 перемещен навсегда)
Последнее неверно. Кто-нибудь может объяснить, почему и как это можно исправить?
Комментарии:
1. У вас есть настройки, связанные с ssl, в блоке
www.domain.com
сервера?2. Вот и все, я забыл добавить другую конфигурацию ssl (например, фактический сертификат) в блок. Вздох, поздняя ночь кодирования…