如何在已经安装好的Nginx上增长新模块

如何在已经安装好的Nginx上增长新模块

2018年07月10日 16:45:36nginx

阅读数:38git

有时咱们须要在现有的web服务器上增长新的模块实现更为丰富的功能,Nginx算是比较经常使用的web服务器,可是nginx也不单单只能够作web服务器,只要有对应的插件还可用做反向代理、即时通信、文件下载、流媒体服务等功能,若是已经安装好了Nginx有不想从新安装覆盖的前提下如何新增模块呢?下面经过安装nginx-push-stream-module做为示例进行说明,安装其余模块也是一样的道理。

首先须要下载模块源码,这里在git上直接克隆github

git clone http://github.com/wandenberg/nginx-push-stream-module.git

将欲增长的模块路径定义为一个变量(此步骤非必要步骤,且定义的变量只能当前会话可用,只是为了后续操做方便)web

NGINX_PUSH_STREAM_MODULE_PATH=$PWD/nginx-push-stream-module

如下是nginx已经安装过的状况下增长模块,由于之前nginx安装在/usr/local/nginx目录下,因此下面的操做都是以此目录为路径进行操做,若是安装到其余目录有些命令须要作对应的更改。服务器

先查看原有nginx的配置参数并拷贝出来spa

/usr/local/nginx/sbin/nginx -V

解压相同版本的nginx源码包(之前安装时的源码包),若是已经删除了课从新下载,版本相同便可(这里以1.12.2版本为例)插件

tar zxvf nginx-1.12.2.tar.gz

进入nginx的目录代理

cd nginx-1.12.2

进行配置(其中***是前面记录的nginx原始的配置,这个务必加上)code

./configure --add-module=$NGINX_PUSH_STREAM_MODULE_PATH ***

编译源码

make

不要执行make install避免覆盖,备份原来的nginx可执行文件

mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_bak

将编译好的nginx复制到原始nginx的sbin目录

cp objs/nginx /usr/local/nginx/sbin/

到此为止已经安装完毕,能够再执行/usr/local/nginx/sbin/nginx -V查看一下nginx的模块状况。

相关文章
相关标签/搜索