У меня есть веб-сервис NodeJS, который использует обратный прокси-сервер с помощью Nginx.Я пытаюсь обновить сертификат SSL от certbot, и для обновления он ищет domain.com/.well-known
для вызова ACME.Однако способ, которым я настроил службу узлов, состоит в том, что корневой путь не обслуживает файлы, а корень домена перехватывается и обрабатывается моей веб-службой.Мой реальный общедоступный рут находится на domain.com/public
, поэтому задача ACME на самом деле на domain.com/public/.well-known
Так что есть два способа исправить это, я мог бы выяснить, как сказать certbot вместо domain.com/public/.well-known
из domain.com/.well-known
, или выясните, как «прокси» domain.com/public/.well-known
до domain.com/.well-known
.
Вот мой конфиг и неудачная попытка перенаправить его:
server {
listen 80;
listen 443 ssl;
client_max_body_size 50M;
ssl_certificate <path to cert>;
ssl_certificate_key <path to key>;
server_name domain.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location /.well-known {
return 302 "http://{$host}/public{$request_uri}";
}
}