安装好的nginx如何查看已经安装模块和添加一个未被编译安装的模块

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安装好的nginx如何查看已经安装模块和添加一个未被编译安装的模块相关的知识,希望对你有一定的参考价值。

今天想通过zabbix实现一个nginx监控,发现以来的模块–with-http_stub_status_module没有安装,需要进行编译一下。这里记录下模块单独安装步骤,就以–with-http_stub_status_module为例
1,查看当前nginx编译参数

[[email protected] nginx-1.14.0]# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.14.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC)
configure arguments:
查看没有我们需要的模块–with-http_stub_status_module,需要单独安装一下。

2,添加未编译安装模块(停掉服务)
[[email protected] nginx-1.14.0]# /etc/init.d/nginx stop
Stopping nginx (via systemctl): [ 确定 ]
2.1 使用参数重新配置:
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module
make 编译

注意:千万不要make install,否则就是覆盖安装

2.2 替换nginx二进制文件 ,当前nginx文件最好备份下,避免出问题。
停止nginx服务
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
cp /objs/nginx /usr/local/nginx/sbin/
重启下nginx服务,重新查看模块加载情况:
[[email protected] nginx-1.14.0]# /etc/init.d/nginx start
Starting nginx (via systemctl): [ 确定 ]

[[email protected] nginx-1.14.0]# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.14.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-28) (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 --with-http_realip_module

模块已安装搞定。

总结,安装nginx安装第三方模块实际上是使用--add-module重新安装一次nginx,不要make install而是直接把编译目录下objs/nginx文件直接覆盖老的nginx文件.如果你需要安装多个nginx第三方模块,你只需要多指定几个相应的--add-module即可.

备注:重新编译的时候,记得一定要把以前编译过的模块一同加到configure参数里面.

以上是关于安装好的nginx如何查看已经安装模块和添加一个未被编译安装的模块的主要内容,如果未能解决你的问题,请参考以下文章

已安装nginx动态添加模块

nginx添加ssl模块

在已经安装好的Nginx上增加新模块

如何向编译安装好的软件添加新模块

已安装nginx动态添加模块

已安装nginx动态添加模块