安装好的nginx如何添加一个未被编译安装的模块

查看当前nginx编译参数 nginx -V

configure arguments:

查看没有我们需要的模块–with-http_stub_status_module,需要单独安装一下。

暂停nginx服务,添加未编译安装模块

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

make 编译(千万不要make install,否则就是覆盖安装

替换nginx二进制文件 ,当前nginx文件最好备份下,避免出问题。
停止nginx服务
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
cp /objs/nginx /usr/local/nginx/sbin/
重启下nginx服务,重新查看模块加载情况 nginx -V

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即可.

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

原文地址:https://www.cnblogs.com/yxfcnbg/p/11510478.html