不少时候,咱们根据当时的项目状况和业务需求安装完Nginx后,后续随着业务的发展,每每会给安装好的Nginx添加其余的功能模块。在为Nginx添加功能模块时,要求Nginx不停机。这就涉及到如何为已安装的Nginx动态添加模块的问题。本文,就和小伙伴们一块儿探讨如何为已安装的Nginx动态添加模块的问题。nginx
这里以安装第三方ngx_http_google_filter_module模块为例。git
Nginx的模块是须要从新编译Nginx,而不是像Apache同样配置文件引用.sogithub
# cd /data/software/
# git clone https://github.com/cuber/ngx_http_google_filter_module
复制代码
将命令行切换到Nginx执行程序所在的目录并输入./nginx -V,具体以下:bash
[root@binghe sbin]# ./nginx -V
nginx version: nginx/1.19.1
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC)
built with OpenSSL 1.0.2 22 Jan 2015
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx-1.19.1 --with-openssl=/usr/local/src/openssl-1.0.2 --with-pcre=/usr/local/src/pcre-8.37 --with-zlib=/usr/local/src/zlib-1.2.8 --with-http_ssl_module
[root@binghe sbin]#
复制代码
能够看出编译安装Nginx使用的参数以下:微信
--prefix=/usr/local/nginx-1.19.1 --with-openssl=/usr/local/src/openssl-1.0.2 --with-pcre=/usr/local/src/pcre-8.37 --with-zlib=/usr/local/src/zlib-1.2.8 --with-http_ssl_module
复制代码
这里添加 --add-module=/data/software/ngx_http_google_filter_module并发
具体以下:分布式
./configure --prefix=/usr/local/nginx-1.19.1 --with-openssl=/usr/local/src/openssl-1.0.2 --with-pcre=/usr/local/src/pcre-8.37 --with-zlib=/usr/local/src/zlib-1.2.8 --with-http_ssl_module -–add-module=/data/software/ngx_http_google_filter_module
复制代码
如上,将以前安装Nginx的参数所有加上,最后添加 --add-module=/data/software/ngx_http_google_filter_module微服务
以后,咱们要进行编译操做,以下:高并发
# make //千万不要make install,否则就真的覆盖
复制代码
这里,须要注意的是:不要执行make install命令。学习
# 备份原来的nginx执行程序
# mv /usr/local/nginx-1.19.1/sbin/nginx /usr/local/nginx-1.19.1/sbin/nginx.bak
# 将新编译的nginx执行程序复制到/usr/local/nginx-1.19.1/sbin/目录下
# cp /opt/nginx/sbin/nginx /usr/local/nginx-1.19.1/sbin/
复制代码
好了,今天就聊到这儿吧!别忘了点个赞,给个在看和转发,让更多的人看到,一块儿学习,一块儿进步!!
若是你以为冰河写的还不错,请微信搜索并关注「 冰河技术 」微信公众号,跟冰河学习高并发、分布式、微服务、大数据、互联网和云原生技术,「 冰河技术 」微信公众号更新了大量技术专题,每一篇技术文章干货满满!很多读者已经经过阅读「 冰河技术 」微信公众号文章,成功跳槽到大厂;也有很多读者实现了技术上的飞跃,成为公司的技术骨干!若是你也想像他们同样提高本身的能力,实现技术能力的飞跃,进大厂,升职加薪,那就关注「 冰河技术 」微信公众号吧,天天更新超硬核技术干货,让你对如何提高技术能力再也不迷茫!