Nginx添加Lua模块需要LuaJIT-2.0.4.tar.gzngx_devel_kitlua-nginx-module

1.安装lua环境

yum install lua

2.创建目录

mkdir -p /usr/local/lua/luajit
cd /usr/local/lua

3.下载安装LuaJIT-2.0.4.tar.gz

wget -c http://luajit.org/download/LuaJIT-2.0.4.tar.gz
tar -xzvf LuaJIT-2.0.4.tar.gz
cd LuaJIT-2.0.4
make install PREFIX=/usr/local/lua/luajit


4.配置环境变量

vim /etc/profile    (最后一行加上下面命令)
export LUAJIT_LIB=/usr/local/lua/luajit/lib
export LUAJIT_INC=/usr/local/lua/luajit/include/luajit-2.0

//重新加载
source /etc/profile

5.下载解压ngx_devel_kit

cd /usr/local/lua

//下载解压ngx_devel_kit
wget https://github.com/simpl/ngx_devel_kit/archive/v0.3.0.tar.gz
tar -xzvf v0.3.0.tar.gz

//下载解压lua-nginx-module
wget https://github.com/openresty/lua-nginx-module/archive/v0.10.9rc7.tar.gz
tar -xzvf v0.10.9rc7.tar.gz

6.下载安装nginx

//创建目录
mkdir /usr/local/nginx
cd /usr/local/nginx

//下载nginx压缩包
wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -zxvf nginx-1.13.7.tar.gz

//进入nginx目录
cd /usr/local/nginx/nginx-1.13.7

//执行命令
./configure --add-module=/usr/local/lua/ngx_devel_kit-0.3.0
 --add-module=/usr/local/lua/lua-nginx-module-0.10.9rc7
(如果期间报错,可执行:yum install lua-devel命令,然后依次执行下面命令)

//执行make命令
make

//执行make install命令
make install

7.安装nginx完成,启动

//查看版本
/usr/local/nginx/sbin/nginx -V
(若出现错误:/usr/local/nginx/sbin/nginx: error while loading shared libraries: libluajit-5.1.so.2: 
cannot open shared object file: No such file or directory
  则使用命令:echo "/usr/local/lua/luajit/lib" >> /etc/ld.so.conf   然后执行:ldconfig )

  
//启动nginx
/usr/local/nginx/sbin/nginx -s reload
(若发生异常:[error] 13467#0: open() "/usr/local/nginx/logs/nginx.pid" failed (2:
 No such file or directory)
 
 则使用nginx -c的参数指定nginx.conf文件的位置
 命令:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf )


8.验证nginx的lua模块

vim /usr/local/nginx/conf/nginx.conf

//在server域中加入代码:

   location /hello {
       default_type 'text/plain';
       content_by_lua 'ngx.say("hello, lua")';
   }
   
//检查语法
nginx -tc /usr/local/nginx/conf/nginx.conf  

//重启nginx
nginx -s reload -c /usr/local/nginx/conf/nginx.conf

9.访问验证

使用linux命令:    curl http://127.0.0.1/hellow  



出现hello, lua则配置成功