我在运行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的证书。
当我加载网站并查看证书都列在主题备用名称下。