Я пытаюсь перейти от самозаверяющих сертификатов к сертификатам Let's Encrypt на моем веб-сервере nginx.
В настоящее время я перенаправлять все запросы http/80
к https/443
, который использует самостоятельно подписанный сертификат , который я создал некоторое время назад.
Теперь - из того, что я понимаю, Let's Encrypt делает запрос на порт 80 (так как я использую webroot
опцию certbot
). Эти запросы перенаправляются, что делает генерацию сертификата неудачной.
Я попытался добиться этого с помощью следующего блока сервера, прослушивая порт 80:
server {
listen 80;
server_name sub.domain.tld;
server_tokens off;
location /.well-known {
root /var/www/letsencrypt;
}
location / {
return 301 https://$host$request_uri;
}
}
Но запросы /.well-known
перенаправляются в https/443
любом случае.
Как я могу перенаправить все запросы с http/80
на https/443
, кроме запросов на /.well-known/
?
wget
/curl
webroot
изcertbot
варианта требует простого HTTP.