在使用nginx中,我们可能需要对已经安装的nginx进行添加或者删除模块
1、先查看nginx安装了哪一些模块
nginx -V
2、来到nginx源码目录,根据如下规则,自行根据需求更改命令
如果要去掉nginx自带的模块,就是用–without做为前缀进行去除,如果需要的是添加模块,那么就用–with进行指定要添加的模块
# --without-http_ssl_module
# 这里去除ssl这个模块,如果其他模块需要,也是还需要用--with进行指定
./configure --without-http_ssl_module --with-http_v2_module
只去掉第三方模块,只用把原来的 --add-module=第三方模块位置 这个参数去掉就可以
相应的,如果需要添加第三方模块那就用 --add-module=第三方模块位置 进行指定添加
# 原命令以及参数
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --add-module=/fastdfs-nginx-module-master/src
# 只去掉fastdfs这个第三方模块,其他依旧保留
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module
3、弄完第二步之后,执行编译
只用执行make命令,不要进行make install
make
等待编译完毕之后,源码目录下会有个objs目录,里面就有编译好的nginx可执行文件
测试模块是否已经添加或者去除
./objs/nginx -V
# 然后查看参数就可以了
4、把新编译的nginx替换原本的nginx
先把nginx停止
systemctl stop nginx
把新编译的nginx可执行文件替换原有nginx可执行文件
cp ./objs/nginx /usr/local/nginx/sbin/
然后选择覆盖就可以了
5、重新启动nginx
systemctl start nginx