一.简介
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,其特点是占有内存少,并发能力强。并且有很多强大的拓展模块可以使用,如果想要添加nginx新模块需要下载模块并重新编译nginx替换即可。
二.添加方法
1).先确认nginx版本信息nginx -V
2).下载需要的模块
例如: HLS流媒体模块 https://codeload.github.com/arut/nginx-rtmp-module/zip/master
上传模块 https://github.com/fdintino/nginx-upload-module/archive/master.zip
3).切换目录cd /usr/local
下载wget http://nginx.org/download/nginx-版本号.tar.gz
4).备份yum安装的nginx文件mv /usr/sbin/nginx /usr/sbin/nginx.bak
cp -r /etc/nginx /etc/nginx.bak
5).可查看是否支持模块 切换到安装目录 ./configure --help|grep 模块名
6).开始编译并添加模块./configure --prefix=/usr/local/nginx-1.16.1 --user=nginx --group=nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-http_image_filter_module=dynamic --with-http_ssl_module --with-http_stub_status_module --add-module=/usr/local/nginx-upload-module-master
(如果中间报错./configure: error: the HTTP image filter module requires the GD library.You can either do not enable the module or install the libraries.)
解决方法:yum install gd-devel
(ubuntu为sudo apt-get install -y libgd-dev
)
7).编译make
,编译后的nginx在当前目录的objs文件夹内。
(注:添加第三方模块不需要make install)
8).将编译好的nginx文件替换掉原始nginx文件mv ./objs/nginx /usr/sbin/nginx
使用nginx -V查看可以发现新模块已经添加进去了