Nginx動態(tài)添加模塊
已經(jīng)安裝好的Nginx動態(tài)添加模塊
說明:
已經(jīng)安裝好的Nginx,需要添加一個未被編譯安裝的模塊,需要怎么弄呢? 這里已安裝第三方nginx-rtmp-module模塊為例
nginx的模塊是需要重新編譯nginx,而不是像apache一樣配置文件引用.so
具體操作步驟:
(1)下載第三方擴展模塊nginx-rtmp-module
# cd /home/work/software/
# wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
# unzip master.zip
# ls nginx-rtmp-module-master/
(2)查看nginx編譯安裝時安裝了哪些模塊
# /opt/nginx-1.9.5/sbin/nginx -V
nginx version: nginx/1.9.5
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC)
built with OpenSSL 1.0.1g 7 Apr 2014
TLS SNI support enabled
configure arguments: –prefix=/opt/nginx-1.9.5 –with-pcre=/home/work/software/pcre-8.38 –with-zlib=/home/work/software/zlib-1.2.8 –conf-path=/opt/nginx-1.9.5/conf/nginx.conf –pid-path=/opt/nginx-1.9.5/conf/nginx.pid –with-http_ssl_module –with-openssl=/home/work/software/openssl-1.0.1g –add-module=/home/work/software/headers-more-nginx-module-0.23 –add-module=/home/work/software/nginx-http-concat-master –with-http_gzip_static_module
可以看出編譯安裝使用了–prefix=/opt/nginx-1.9.5 –with-pcre=/home/work/software/pcre-8.38 –with-zlib=/home/work/software/zlib-1.2.8 –conf-path=/opt/nginx-1.9.5/conf/nginx.conf –pid-path=/opt/nginx-1.9.5/conf/nginx.pid –with-http_ssl_module –with-openssl=/home/work/software/openssl-1.0.1g –add-module=/home/work/software/headers-more-nginx-module-0.23 –add-module=/home/work/software/nginx-http-concat-master –with-http_gzip_static_module這些模塊。
(3)加入需要安裝的模塊,重新編譯,如這里添加–add-module=/home/work/software/nginx-rtmp-module-master
# cd /home/work/software/nginx-1.9.5 //進入到nginx之前安裝的目錄
# ./configure –prefix=/opt/nginx-1.9.5 –with-pcre=/home/work/software/pcre-8.38 –with-zlib=/home/work/software/zlib-1.2.8 –conf-path=/opt/nginx-1.9.5/conf/nginx.conf –pid-path=/opt/nginx-1.9.5/conf/nginx.pid –with-http_ssl_module –with-openssl=/home/work/software/openssl-1.0.1g –add-module=/home/work/software/headers-more-nginx-module-0.23 –add-module=/home/work/software/nginx-http-concat-master –with-http_gzip_static_module –add-module=/home/work/software/nginx-rtmp-module-master
# make //注意:千萬不要make install,不然真的就GG了
(4)替換nginx二進制文件
# /etc/init.d/nginx stop
# cp /opt/nginx-1.9.5/sbin/nginx /opt/nginx-1.9.5/sbin/nginx.bak
# cp ./objs/nginx /opt/nginx-1.9.5/sbin/
(5)再次確認是否安裝成功
# /opt/nginx-1.9.5/sbin/nginx -V
nginx version: nginx/1.9.5
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC)
built with OpenSSL 1.0.1g 7 Apr 2014
TLS SNI support enabled
configure arguments: –prefix=/opt/nginx-1.9.5 –with-pcre=/home/work/software/pcre-8.38 –with-zlib=/home/work/software/zlib-1.2.8 –conf-path=/opt/nginx-1.9.5/conf/nginx.conf –pid-path=/opt/nginx-1.9.5/conf/nginx.pid –with-http_ssl_module –with-openssl=/home/work/software/openssl-1.0.1g –add-module=/home/work/software/headers-more-nginx-module-0.23 –add-module=/home/work/software/nginx-http-concat-master –with-http_gzip_static_module –add-module=/home/work/software/nginx-rtmp-module-master
至此、nginx就重新編譯添加模塊成功了。