nginx配置https详解

nginx配置https详解

经验文章nimo972025-06-05 17:11:591A+A-

要在Nginx上配置HTTPS,需要进行以下步骤:

  1. 获取证书和密钥文件 在使用HTTPS之前,需要先获取SSL证书和密钥文件。可以通过购买证书或者使用自签名证书来获取,证书和密钥文件可以通过各种方式获取,例如使用Let's Encrypt等证书颁发机构,或使用OpenSSL自己生成证书。
  2. 配置HTTPS协议 在Nginx配置文件中,添加HTTPS协议的监听和SSL证书和密钥的配置。例如:
server {
    listen       443 ssl;
    server_name  example.com;

    ssl_certificate      /path/to/cert.pem;
    ssl_certificate_key  /path/to/key.pem;

    # Other SSL parameters
    ...
}

在此示例中,监听端口为443,使用ssl协议进行加密传输,证书文件为/path/to/cert.pem,密钥文件为/path/to/key.pem。

  1. 配置HTTP请求的重定向 为了确保所有HTTP请求都被重定向到HTTPS,需要在Nginx配置文件中添加HTTP请求的重定向。例如:
server {
    listen       80;
    server_name  example.com;
    return       301 https://example.com$request_uri;
}

在此示例中,监听端口为80,将所有HTTP请求重定向到HTTPS协议的https://example.com。

  1. 配置其他SSL参数 在Nginx中,可以配置许多其他的SSL参数,例如SSL协议版本、密码套件、会话缓存等。可以根据实际需要进行配置。
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;
ssl_session_cache shared:SSL:50m;
ssl_session_timeout 1d;

在此示例中,配置SSL协议版本为TLSv1.2和TLSv1.3,优先使用服务器密码套件,配置密码套件,设置会话缓存大小为50MB,会话超时时间为1天。

  1. 重启Nginx服务 完成以上配置后,需要重启Nginx服务,使其生效。
sudo systemctl restart nginx

完成以上步骤后,即可在Nginx上成功配置HTTPS,实现安全的加密传输。

点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7