当前位置:web 服务器 > Nginx >>

linux安装lua_nginx_module模块

1.下载安装LuaJIT 2.1(2.0或者2.1都是支持的,官方推荐2.1):http://luajit.org/download.html
cd /usr/local/src 
wget http://luajit.org/download/LuaJIT-2.1.0-beta2.tar.gz 
tar zxf LuaJIT-2.1.0-beta2.tar.gz 
cd LuaJIT-2.1.0-beta2 
make PREFIX=/usr/local/luajit 
make install PREFIX=/usr/local/luajit

2.下载ngx_devel_kit(NDK)模块 :https://github.com/simpl/ngx_devel_kit/tags,不需要安装
cd /usr/local/src 
wget https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gz 
tar -xzvf v0.2.19.tar.gz


3.下载最新的lua-nginx-module 模块 :https://github.com/openresty/lua-nginx-module/tags,不需要安装

cd /usr/local/src 
wget https://github.com/openresty/lua-nginx-module/archive/v0.10.2.tar.gz 
tar -xzvf v0.10.2.tar.gz


4.设置变量

export LUAJIT_LIB=/usr/local/luajit/lib 
export LUAJIT_INC=/usr/local/luajit/include/luajit-2.1
5.nginx -V可查看已经编译的配置(可在nginx -V得到的配置下重新安装,下面还是采用的默认配置)
 
6.进入之前安装nginx的解压目录,重新编译安装(引入LuaJIT并加入ngx_devel_kit-0.2.19和ua-nginx-module-0.10.2的目录)
./configure --with-ld-opt="-Wl,-rpath,/usr/local/luajit/lib" --add-module=/usr/local/src/ngx_devel_kit-0.2.19 --add-module=/usr/local/src/lua-nginx-module-0.10.2


7.编译安装

make -j2 
make install


8.查看是否编译成功

在/usr/local/nginx/conf/nginx.conf中加入如下代码:
location /hello_lua { 
    default_type 'text/plain'; 
    content_by_lua 'ngx.say("hello, lua zzzyk.com")'; 
}


9.杀死所有nginx进程并重启(不重启配置文件不生效)

killall nginx
/usr/local/nginx/sbin/nginx
10.访问curl 127.0.0.1/hello_lua会出现”hello, lua zzzyk.com”表示安装成功
 
如果在启动nginx时报错:
nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory

ldconfig


备注:
ngx_lua_module 是一个nginx http模块,它把 lua 解析器内嵌到 nginx,用来解析并执行lua 语言编写的网页后台脚本,可以用来实现灰度发布。

本文介绍在linux中安装lua_nginx_module模块,并运行一个简单的lua脚本控制nginx的Demo。

Apache
IIS
Nginx
Tomcat
如果你遇到web 服务器难题:
访问www.zzzyk.com 试试
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,