nginx配置ssl证书

前提条件(已经生成了一下文件)
XXXX.com.crt   (域名证书) 有的证书可能是cer 或 pem 或其他后缀名,都可以
XXXX.com.key   (私钥文件)

#配置ca证书
    server {
        listen 443;
        server_name  XXXX.com;
        ssl on;
        #引用证书(必须,放在conf/ssl目录下可以用相对路径,其他位置用绝对路径)
        ssl_certificate     ssl/3024790_XXXX.cn.pem;// 你的证书
        ssl_certificate_key ssl/3024790_XXXX.cn.key;// 你的证书
        #协议优化(可选,优化https协议,增加安全性)
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_prefer_server_ciphers on;
        ssl_session_cache shared:SSL:10m;
        ssl_session_timeout 10m;
        location / {
            root   html;
            index  index.html index.htm;
        }
        
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

#把http的域名请求转成https
server {
    listen 80;
    server_name XXXX.com;// 你的域名
    rewrite ^(.*)$ https://$host$1 permanent;// 把http的域名请求转成https
}

注意:nginx -t 报错the "ssl" parameter requires ngx_http_ssl_module缺少ssl模块

如何补装SSL模块
步骤一:我们先来到当初下载nginx的包压缩的解压目录.
步骤二:来到解压目录下后,按顺序执行一下命令:
命令1、./configure --with-http_ssl_module //重新添加这个ssl模块,如果报错缺少库,安装相应库
命令2、执行make命令,但是不要执行make install,因为make是用来编译的,而make install是安装,不然你整个nginx会重新覆盖的。
命令3、在我们执行完做命令后,我们可以查看到在nginx解压目录下,objs文件夹中多了一个nginx的文件,这个就是新版本的程序了。首先我们把之前的nginx先备份一下,然后把新的程序复制过去覆盖之前的即可。
命令4,最后我们来到Nginx安装目录下,来查看是否有安装ssl模块成功。执行./sbin/nginx -V即可:

https://blog.csdn.net/qq_35531549/article/details/89183486

原文地址:https://www.cnblogs.com/lazy-sang/p/11951070.html