nginx添加网上很多动态的第三方模块教程,都是在讲./configure后替换nginx执行文件,今天我尝试以一波他们的方法没有成功,记录下我的操作。
环境和版本:centos7 niginx1.16
前提,NG想要动态的可扩展第三方模块必须要编译安装才行,所以yum安装的洗洗睡吧
编译安装很简单,在ng官方下载源码解压后,进入文件夹第一层直接运行:
./configure --prefix=/data/nginx
这是初始化NG的安装目录,后面指定的是NG安装目录,其实这句命令也是后期加模块的命令,比如这次我加的模块执行的命令是:
./configure --prefix=/data/nginx --add-module=../ngrtmp
后面会单独解释此命令。
在初始化完NG后,直接make&&make install即可安装NG。
启动NG是在安装的努力下sbin目录中的nginx二进制文件,./nginx即可启动
在二进制安装完NG后想要扩展NG模块怎么办,比如这次我扩展添加一个ng的stmp模块,现在git上下载了stmp模块源码,解压后改名为ngstmp文件夹
添加模块我们需要在ng的二进制启动文件中添加模块信息,之后重启NG二进制文件就能够调用里面的第三方模块了,如何在已经编译好的二进制文件中添加新模块信息?只能重新初始化NG,产生一个新的ng二进制文件,然后替换掉原有的二进制启动文件。注意:是不能在原有NG二进制文件中直接添加的哦。
所以有了以下命令: