# SSL/HTTPS

网站完成域名绑定且可以通过HTTP访问之后,方可设置HTTPS。

Node.js预装包,已安装Web服务器 SSL 模块和公共免费证书方案 Let's Encrypt (opens new window) ,并完成预配置。

除了虚拟主机配置文件之外,HTTPS设置无需修改Nginx任何文件

# 简易步骤

如果你想使用免费证书,只需在服务器中运行一条命令certbot就可以启动证书部署

如果你已经申请了商业证书,只需三个步骤,即可完成HTTPS配置

  1. 将申请的证书、 证书链文件和秘钥文件上传到 /data/cert 目录
  2. 打开虚拟主机配置文件:/etc/nginx/conf.d/default.conf ,插入如下的 HTTPS 配置项 到 server{ } 段落中
    #-----HTTPS template start------------
    listen 443 ssl; 
    ssl_certificate /data/cert/xxx.crt;
    ssl_certificate_key /data/cert/xxx.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    #-----HTTPS template end------------
    
  3. 确保ssl_certificate, ssl_certificate_key等项的值(参考
  4. 保存 default.conf,然后在 WinSCP 中运行重启服务命令 或 云控制台重启服务器 :
    # 重启Nginx服务命令
    systemctl restart nginx
    

# 专题指南

若参考上面的简易步骤仍无法成功设置HTTPS访问,请阅读由Websoft9提供的 《HTTPS 专题指南》 (opens new window)

HTTPS专题指南方案包括:HTTPS前置条件、HTTPS 配置段模板、注意事项、详细步骤以及故障诊断等具体方案。