我试图从自签名证书转到我们的nginxnetworking服务器上encryption证书。
目前,我将所有请求redirect到http/80到https/443 ,它使用我刚刚创build的自签名证书。
现在 – 根据我的理解,Let's Encrypt向端口80发出请求(因为我使用的是certbot的webroot选项)。 这些请求被redirect,导致证书生成失败。
我试图用下面的服务器块来实现这个function,在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; } }
但是https/443 /.well-known请求被redirect到https/443 。
如何将所有请求从http/80redirect到https/443 ,除了对/.well-known/的请求?
尝试这个:
server { listen 80; server_name sub.domain.tld; server_tokens off; root /var/www/letsencrypt; location /.well-known { try_files $uri $uri/ =404; } location / { return 301 https://$host$request_uri; } }
由于虚拟服务器中没有try_files条目,因此不知道如何处理来自/.well-known请求。