我在運行Nginx的網絡服務器上設置了一個letsencrypt SSL證書。letsencrypt在nginx和非www https到www https重定向
http到https重定向爲非www和www工作正常。 直接去https://www.example.com
作品。 https非www不起作用,瀏覽器返回拒絕連接。
所以: http://example.com
到https://www.example.com
http://www.example.com
到https://www.example.com
工作
https://example.com
到https://www.example.com
不起作用
我的網站的conf是
server {
listen 80;
server_name example.com www.example.com;
return 301 https://www.example.com$request_uri;
}
server {
listen 443 ssl http2;
server_name example.com;
#ssl certs locations etc.
return 301 https://www.example.com$request_uri;
}
server {
listen 443 ssl http2;
server_name www.example.com;
#ssl certs locations etc.
#rest of main block
}
的letsencrypt證書是用命令(certbot-auto
因爲服務器運行的是較舊的Linux發行版)發佈:
certbot-auto certonly -n -a webroot --webroot-path=[path to webroot] -d example.com -d www.example.com --email [email protected] --agree-tos
說完看着其他類似的問題,nginx的CONF應該工作。 我的理解是,我如何創建證書意味着有一個example.com和www.example.com的證書。
當我加載網站並查看證書都列在主題備用名稱下。