18

我安装http-lua-module了 nginx,制作了一个运行良好的脚本,但现在我想确保nginx 使用LuaJit而不是Lua(因为我的研究表明 LuaJit 更快)。

我添加到.bushrc这些代码行:

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

我还重新编译了 nginx,现在我只想确保它使用 LuaJit。

4

1 回答 1

25

编辑您的nginx.conf文件,将 a 添加location到您的server {}块中:

location = /lua {
    default_type text/plain;
    content_by_lua '
        if jit then
            ngx.say(jit.version)
        else
            ngx.say("Not LuaJIT!")
        end
    ';
}

然后启动您的 nginx 服务器,然后在 curl 或您喜欢的 Web 浏览器中访问 /lua。如果你看到像“LuaJIT 2.0.2”这样的输出,那么你正在使用 LuaJIT;否则,如果您看到“Not LuaJIT!”,那么您使用的是标准 Lua 5.1 解释器。

如果使用动态链接(通常是这种情况),另一种更快的方法是检查与您的 nginx 可执行文件链接的 Lua DSO 文件:

ldd /path/to/your/nginx/sbin/nginx|grep -i lua

如果你看到类似的东西

libluajit-5.1.so.2 => /usr/local/openresty-debug/luajit/lib/libluajit-5.1.so.2 (0x00007fb3d38f6000)

然后你正在使用 LuaJIT。

于 2013-09-27T21:24:18.847 回答