是由淘宝工程师和所开发的Nginx第三方模块,能将Lua脚本嵌入到Nginx配置中,当然也可以在Nginx配置中调用脚本,从而让Nginx执行Lua脚本以高并发/非阻塞地处理各种请求。
一、安装
1、LuaJIT
LuaJIT的信息可以参见。执行如下命令安装LuaJIT:
#wget
#tar -xzvf LuaJIT-2.0.2.tar.gz
#cd LuaJIT-2.0.2
#make
#make install
2、Lua模块
#wget
#tar -xzvf v0.8.6
3、Nginx
#wget
#tar -xzvf nginx-1.4.2.tar.gz
#cd nginx-1.4.2
编译Nginx源码前要先导入环境变量,告诉Nginx去哪里找luajit
#export LUAJIT_LIB=/usr/local/lib
#export LUAJIT_INC=/usr/local/include/luajit-2.0
#./configure --prefix=/usr/local/nginx-1.4.2 --add-module=../lua-nginx-module-0.8.6
#make -j2
#make install
#ln -s /usr/local/lib/libluajit-5.1.so.2 /lib64/libluajit-5.1.so.2
二、配置
可以直接在Nginx配置文件直接嵌入Lua脚本代码,也可以调用Lua脚本文件。
1、直接嵌入脚本
location /hello {
default_type 'text/plain';
content_by_lua 'ngx.say("hello, lua")';
}
2、调用脚本文件
(1)在Nginx根目录下,新建lua文件夹,并创建test_lua.lua脚本,脚本内容如下:
print "hello, lua"
(2)修改nginx.conf配置文件
lua_code_cache off;
location /hello {
content_by_lua_file lua/test_lua;
}
上面的lua_code_cache off关掉lua加载cache,只为了方便测试时修改lua脚本后不需要重启Nginx,不是必须的。
三、测试
启动Nginx,用浏览器访问,即可看到hello, lua说明你成功了
。
关于Nginx与Lua之间的一些资料请参看,,
这里,,还有。
阅读(8694) | 评论(1) | 转发(2) |