nginx 替换

nginx 替换

问题

nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf

  • nginx缺少http_ssl_module模块,需要在已安装的nginx中添加ssl模块。需要对原来的模块进行增加

操作步骤

  • 首先查看原来安装的nginx已经安装的模块,由于我的安装目录是 /usr/local/nginx ,所以命令是

    /usr/local/nginx/sbin/nginx -V
    
  • 输出结果是:

    nginx version: nginx/1.19.0
    built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
    configure arguments: --prefix=/usr/local/nginx
    
  • 可以看到从configure arguments中看出来,任何模块都没有,所以需要进行添加,进入nginx的安装包

    cd nginx-1.19.0/
    
  • 执行以下命令,注意目录

    ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
    
  • 然后执行 make,注意不需要 install,因为之前安装过了,如果执行 install会覆盖

  • 为了防止出现意外,将之前的 nginx 进行备份,然后干掉之前的启动的 nginx, 再把刚才编译好的 nginx 复制过去

    cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
    ps aux | grep nginx # 查询进程号
    kill -9 pid # pid 就是 nginx 的进程号,注意如果存在 worker process 进程,也需要干掉
    cp ./objs/nginx /usr/local/nginx/sbin/
    
  • 检查是否安装成功

    /usr/local/nginx/sbin/nginx -V
    
  • 出现以下结果即是成功

    nginx version: nginx/1.19.0
    built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
    built with OpenSSL 1.0.2k-fips  26 Jan 2017
    TLS SNI support enabled
    configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
    
原文地址:https://www.cnblogs.com/dwtfukgv/p/14875654.html