完整的NGINX配置HTTPS的教程如下:

  1. 获取SSL证书
    在配置HTTPS之前,需要先获取有效的SSL证书。可以购买商业SSL证书,也可以使用免费的证书颁发机构(CA)如Let's Encrypt获取证书。

蓝易云服务器 - NGINX配置HTTPS完整教程_SSL

  1. 安装SSL证书
    将获取的SSL证书文件和私钥文件上传到服务器上。
  2. 配置NGINX
  • 打开NGINX配置文件 nginx.conf,找到对应的服务器配置块(server块)。
  • 添加HTTPS相关配置:
server {
    listen 80;
    server_name your_domain.com;

    # 重定向HTTP请求到HTTPS
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name your_domain.com;

    # SSL证书和私钥路径
    ssl_certificate /path/to/your_domain_com.crt;
    ssl_certificate_key /path/to/your_domain_com.key;

    # SSL配置
    ssl_protocols TLSv1.2; # 指定支持的SSL协议版本
    ssl_prefer_server_ciphers on; # 使用服务器端优先的加密套件
    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"; # 定义加密套件
    ssl_session_cache shared:SSL:10m; # 缓存会话以提高性能
    ssl_session_timeout 10m; # 缓存会话的超时时间

    # 其他HTTP配置...
}
  • listen 443 ssl;:监听443端口并启用SSL。
  • server_name:设置服务器的域名。
  • ssl_certificate和 ssl_certificate_key:指定SSL证书和私钥的路径。
  • ssl_protocols:指定支持的SSL协议版本。
  • ssl_prefer_server_ciphers:使用服务器端优先的加密套件。
  • ssl_ciphers:定义加密套件,这里使用了一组推荐的安全套件。
  • ssl_session_cache和 ssl_session_timeout:配置SSL会话缓存,提高性能。
  1. 重启NGINX
    完成配置后,重启NGINX服务以使HTTPS生效:
sudo service nginx restart

现在,你已经成功配置了NGINX的HTTPS。当客户端访问服务器的域名时,NGINX会使用SSL证书对连接进行加密,实现HTTPS安全访问。请注意,这只是一个简单的示例,实际应用中可能需要更多的配置和优化,例如添加HSTS、OCSP Stapling等功能,以增强HTTPS的安全性。