У нас есть конфигурация nginx с server_name в качестве подчеркивания. Как переписать с http на https.
server {
server_name _;
rewrite ^/(.*) https://$server_name/$1 permanent;
}
Это возвращает ошибку как http: // _ / не нашел. Ни в коем случае не указывать доменное имя в правиле перезаписи.
Установите блок nginx для прослушивания порта 80, чтобы перенаправить все на https. Поместите обычную конфигурацию в блок 443.
server {
listen 80;
server_name _;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name _;
[....]
}
Похоже, ваша проблема заключается в неспособности решить _
(это основная причина, по которой вы получаете ошибку «не найден» после подозрительного перенаправления), а не в файле конфигурации nginx. Создайте свою собственную зону TLD для _
, или хотя бы добавить запись в /etc/hosts
.