由于原生的
nginx
功能太少,有时候为了实现某些功能,则需要安装第三方模块来实现,但是nginx
不支持动态加载模块,所以每次安装第三方模块需要覆盖nginx
文件。
nginx第三方模块安装
./configure --prefix=/usr/local/nginx --add-module=/第三方模块目录
make
make install
/usr/local/nginx/sbin/nginx -v
初次安装nginx并安装第三方模块
./configure --prefix=/usr/local/nginx \
--with-http_ssl_module \
--add-module=/第三方模块
make
make install
/usr/local/nginx/sbin/nginx -v
已安装nginx添加新模块
查看已编译过的模块
nginx -V
#nginx version: nginx/1.10.3
#built by gcc 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC)
#built with OpenSSL 1.0.2k 26 Jan 2017
#TLS SNI support enabled
configure arguments: --with-stream --with-http_realip_module --add-module=../nginx_upstream_check_module --with-http_ssl_module --add-module=../nginx-module-vts --prefix=/opt/nginx1.10.3 --add-module=../ngx_http_geoip2_module-2.0 --with-http_v2_module --with-openssl=/usr/local/src/openssl-1.0.2k --with-stream_ssl_module --add-module=/tmp/nginxtmp/nginx_install_content/nginx-goodies-nginx-sticky-module-ng --add-module=/tmp/nginxtmp/nginx_install_content/nginx-http-user-agent-master
./configure --prefix=/usr/local/nginx \
--with-http_ssl_module \
--add-module=/第三方模块
make
/usr/local/nginx/sbin/nginx -s stop
cp objs/nginx /usr/local/nginx/sbin/nginx
/usr/local/nginx/sbin/nginx -v
相比仅仅多了一步覆盖nginx文件
安装
nginx
第三方模块实际上就是使用--add-module
重新安装一次nginx
,不需要make install,只需要将编译的nginx
二进制文件替换就可以新增第三方模块,记得把之前编译过的模块一同加入
configure
编译