导航

Nginx SSL https 添加新模块

Posted on 2021-01-20 12:08  yiyishuitian  阅读(177)  评论(0编辑  收藏  举报

1  查看现有安装模块

/usr/local/nginx/sbin/nginx  -V

nginx version: nginx/1.10.3
 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module

包含了现使用的Nginx 版本和安装的模块。

2 查找源安装包目录,如果没有也可按上面查询的现使用版去下载个一样的

3 把需要增加的模块再重新编译一下。

4 备份现用的 nginx 

5 编译好的 sobj 文件夹下编译好的 nginx 文件,拷贝到 现运行的文件夹下,覆盖现运行的 nginx 文件。如果覆盖不成功可以先停止 nginx.

6 测试新的 nginx是否正确。

7 重启或者平滑重启。

 

 

 

 

以下内容转自:https://www.cnblogs.com/zhangxiaoliu/p/6183520.html

 

安装成功的nginx如何添加未编译模块?

 

在重启nginx后发生了错误,错误如下:

nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:117  //说明缺少http_ssl_module模块
nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed

解决方法如下:

步骤1:查看nginx编译安装时的命令,安装了哪些模块和nginx版本

  /usr/local/nginx/sbin/nginx -V

  

  会显示如下信息:

nginx version: nginx/1.7.7
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) 
configure arguments: --prefix=/usr/local/nginx --user=www --group=www

 

步骤2:重新编译 nginx-1.7.7

  wget http://nginx.org/download/nginx-1.7.7.tar.gz

  tar zxvf nginx-1.7.7.tar.gz

  cd nginx-1.7.7

  //configure参数要和步骤1的configure arguments一模一样

  ./configure --prefix=/usr/local/nginx --with-http_ssl_module  --user=www --group=www

  make (没有make install)

 

步骤3:备份nginx的二进制文件

  cp /usr/local/nginx/sbin/nginx  /usr/local/nginx/sbin/nginx.bak

 

步骤4:覆盖nginx的二进制文件

  cp objs/nginx   /usr/local/nginx/sbin/

 

  会提醒如下信息:

  cp:是否覆盖"/usr/local/nginx/sbin/nginx"? y
  cp: 无法创建普通文件"/usr/local/nginx/sbin/nginx": 文本文件忙 (nginx二进制文件繁忙,可以停止nginx,再试一次就可以了)

步骤5:重启nginx

  service nginx start (或/etc/init.d/nginx start)