nginx 新增SSL模块,并配置HTTPS

本文详细介绍了如何在已安装的nginx中新增SSL模块,包括版本检查、模块编译及HTTPS配置等步骤,适用于业务需求变更时快速扩展nginx功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 使用背景
    某些时候nginx已经安装好并且上线,由于业务需求需要新增模块。现以在已安装好的nginx 新增SSL 模块为例进行讲述。

  2. 查看nginx 版本,进入 nginx 的安装目录(本例安装在 /nginx)。
    使用指令: /nginx/sbin/nginx -V 出现下图所示,出现红色部分代表已安装SSL直接进入第8步。
    红色箭头处表示已安装SSL 模块,如存在则表示已安装好

  3. 下载与已安装的nginx一样的版本,并解压。(本例解压目录为:/home/devTools/nginx-1.12.2)

  4. 进入解压目录 ( 指令:cd /home/devTools/nginx-1.12.2 ),并执行以下指令进行编译:

    1、./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

    2、执行指令:make ,不要执行:make install 否则会覆盖现有的nginx。

  5. 关闭nginx(/nginx/sbin/nginx -s quit)。

  6. cp /home/devTools/nginx-1.12.2/objs/nginx /nginx/sbin/nginx

  7. 到此时,新增模块结束 使用指令: /nginx/sbin/nginx -V 查看信息。

  8. 配置HTTPS ,编辑 nginx 配置文件新增以下 信息。

    server {
    listen 443 ;
    server_name 域名;
    ssl on;
    ssl_certificate /nginx/cert/218xxx.pem;
    ssl_certificate_key /nginx/cert/21xxxx.key;
    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout 5m;

        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers  on;
    
        location / {
               # limit_conn addr 10;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header REMOTE-HOST $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://xxxxyyyyy;
         }
    

    }

  9. 阿里云添加HTTPS 具体可以参考文档如下:阿里云安装文档

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值