CentOS 下重新编译 nginx 添加模块
nginx安装成功后,发现有一些其他模块没有编译进去,或者想额外添加一些模块,这时候就要重新编译nginx。
首先,查看之前编译的一些参数,比如
首先,查看之前编译的一些参数,比如
可以看到之前编译Nginx时候的执行命令 里面包含了各种参数!可以看到之前编译Nginx时候的执行命令 里面包含了各种参数!
比如我现在要新增–with-http_gzip_static_module 这些模块参数,那么我只要把这些参数添加进去然后重新编译即可,需要注意的是原先编译过的参数也要加进来。
./configure --prefix=/usr/local/nginx \ --add-module=/usr/local/src/ngx_http_consistent_hash-master/ \ --with-http_gzip_static_module
注意:这里只能make 千万别make install,否则就覆盖安装了
make
make完成后,在Nginx安装源码目录下会有一个objs目录,objs目录下就多了个nginx,这个就是新版本的程序了!
然后用objs目录下的nginx替换之前已经安装过的nginx。
先备份旧的sbin/nginx文件
然后cp objs/nginx /usr/local/nginx/sbin/nginx
如果提示“cp:cannot create regular file `/usr/local/nginx/sbin/nginx’: Text file busy”则执行:cp -rfp objs/nginx /usr/local/nginx/sbin/nginx
然后重新启动nginx服务即可!
安装第三方模块差不多和上边一样 只不过是多了哥add-module=第三方模块目录
然后重新编译 备份就的sbin/nginx make完之后不make install 然后用objs里面的nginx替换sbin/nginx即可!
重新编译的时候,记得一定要把以前编译过的模块一同加到configure参数里
本作品采用《CC 协议》,转载必须注明作者和本文链接
:+1: