使用lua与nginx时出错

时间:2013-11-08 07:45:31

标签: nginx lua

我是nginx的新手,lua .i安装了Openresty。 下面是我在nginx.conf文件中的代码。

server{
      location /hellolua {
      default_type 'text/plain';
        content_by_lua '        local name = ngx.var.arg_name or "Anonymous"
        ngx.say("Hello, ", name, "!")    ';
        }
       }

当我正在运行时

sudo service nginx start
我收到错误
Starting nginx: nginx: [emerg] unknown directive "content_by_lua" in /etc/nginx/nginx.conf:24
nginx: configuration file /etc/nginx/nginx.conf test failedt
请让我知道我错过了什么。

2 个答案:

答案 0 :(得分:5)

在我看来,好像你还没有安装正确的模块? ngx_lua(http://wiki.nginx.org/HttpLuaModule

你提到OpenResty。你用lua配置了吗?如果没有,指南就在这里(http://wiki.nginx.org/HttpLuaModule#Installation) 快速简历:

  

ngx_openresty软件包可用于安装Nginx,ngx_lua,标准Lua 5.1解释器或LuaJIT 2.0之一,以及强大的配套Nginx模块包。基本安装步骤很简单./configure --with-luajit && make && make install.

您也可以手动将ngx_lua编译成nginx,完整指南也在链接中。

在评论讨论之后 - 我删除了答案的无关部分。

答案 1 :(得分:3)

默认情况下,OpenResty的nginx安装在路径/usr/local/openresty/nginx/sbin/nginx中。系统的默认nginx init配置需要更新才能指向正确的位置。