给lnmp一键包中的nginx安装openresty的lua扩展

lnmp一键包(https://lnmp.org)本人在使用之后发现确实好用,能帮助我们快速搭建起lnmp、lamp和lnmpa的web生产环境,因此推荐大家可以多试试。但有的朋友可能需要使用openresty的lua扩展,这篇文章就会教你们怎么在军哥的一键包中为nginx安装openresty的lua扩展。

首先我们要先安装LuaJIT,为了稳定我选择的是稳定的2.0.4版本进行安装(我相信一个运维都懒得各种折腾各种修吧?)

cd /root
wget -c http://luajit.org/download/LuaJIT-2.0.4.tar.gz
tar zxf LuaJIT-2.0.4.tar.gz
cd LuaJIT-2.0.4
make

等这条命令执行完了之后,我们要接着执行:

make install PREFIX=/usr/local/luajit

再等在执行完毕,我们要下载openresty的nginx-lua扩展和ngx_devel_kit,不过我们要注意的是nginx-lua扩展更新的比较频繁,要先记得上github上看看他新的版本号然后再修改:

cd /root
wget -c https://github.com/openresty/lua-nginx-module/archive/v0.10.7.tar.gz && tar zxf v0.10.7.tar.gz
wget -c https://github.com/simpl/ngx_devel_kit/archive/v0.3.0.tar.gz && tar zxf v0.3.0.tar.gz

export LUAJIT_LIB=/usr/local/luajit/lib
export LUAJIT_INC=/usr/local/luajit/include/luajit-2.0

cat > /etc/ld.so.conf.d/luajit.conf<<EOF
/usr/local/luajit/lib
EOF

ldconfig

下来我们要对LuaJIT做一些系统环境设置:


以上的命令依次执行,如果我们在安装了之后还要升级nginx的版本或者ngx_devel_kit、nginx-lua扩展、luaJIT中任何东西中的一种,以上的环境设置我们都还需要再重新执行一次才能正常升级。

接下来我们就要开始升级nginx版本了,在升级nginx版本之前,我们要在军哥的lnmp一键包目录下的lnmp.conf文件里的Nginx_Modules_Options加上编译参数:

--with-ld-opt=-Wl,-rpath,/usr/local/luajit/lib --add-module=/root/lua-nginx-module-0.10.7 --add-module=/root/ngx_devel_kit-0.3.0

加上以上这段参数之后,我们就使用军哥的lnmp一键包中升级脚本

./upgrade.sh nginx

升级一遍nginx即可完成lua扩展的安装。可能有的朋友会问,版本号一定要比当前安装的版本号高么?我在这的回答是,并不用。

等重新编译完,nginx中就能使用lua扩展了。

在nginx的配置中,可以用一下脚本检测安装是否成功。

server {
    listen       80;
    server_name  _;
    location /lua {
        default_type 'text/html';
        content_by_lua 'ngx.say("hello world")';
    }
}

lua没有安装成功,/etc/init.d/nginx reload 是失败的

使用 http://服务器ip/lua 可以看到页面显示 hello world

本文转至:http://www.vpstry.com/archives/79.html