我从namecheap获得SSL并激活。激活后,我下载文件mydomain.crt和mydomain.ca-bundle。然后将它们合并为一个。
$ cat mydomain.crt mydomain.ca-bundle>> mydomain_chain.crt
我的服务器是digitalocean上的VPS LEMP堆栈。
我把mydomain_chain.crt和mydomain.key放在/ etc / nginx / ssl文件夹中。
然后编辑nginx主机文件,如下所示: sudo nano / etc / nginx / sites-available / default
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name mydomain.co www.mydomain.co;
rewrite ^/(.*) https://www.mydomain.co/$1 permanent;
}
server {
listen 443 ssl http2 default_server;
listen [::]:443 http2 default_server;
server_name mydomain.co www.mydomain.co;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
root /var/www/html;
index index.html index.htm;
ssl_certificate /etc/nginx/ssl/mydomain_chain.crt;
ssl_certificate_key /etc/nginx/ssl/mydomain.key;
location / {
try_files $uri $uri/ =404;
}
}
但是当我输入https://www.mydomain.co
时,它无效我可能知道缺少什么配置。
此致 亚历克斯
答案 0 :(得分:1)
非常感谢你的帮助。
我发现了问题。在digitalocean中,如果您单击LEMP 16.04,则您的nginx主机配置文件是/ etc / nginx / sites-available / digitalocean,而不是/ etc / nginx / sites-available / default。这就是为什么我默认改变的原因,它没有影响。
答案 1 :(得分:0)
SSL不能在IPv6上启用,但除此之外,您的配置似乎可行(重定向到HTTPS有点不寻常,但如果您明确尝试了https://那就不重要了。)