在nginx下运行Lua(用Lua编写一个网站)

Jon*_*Coe 8 lua cgi nginx

作为一个学习练习,我花了一些时间通过创建一些基本的应用程序来获取Lua.我已经在Natty/Ubuntu上安装并运行得很好,但是,我有点迷失了如何让它与nginx玩得很好.

我在这里阅读了一下http://wiki.nginx.org/HttpLuaModule#Installation 并将此repo https://github.com/chaoslawful/lua-nginx-module克隆到我的/ etc/nginx文件夹中......

然而,我仍然相当迷失,并且不确定如何在基本水平上使其工作.是否可以在我的nginx.conf文件中包含一些内容来处理/ lua请求,或者我是否需要重新编译/重新安装nginx?(我宁愿避免这种情况).

我已经通过fpm在nginx下使用php了很长一段时间,但我真的不知道从哪里开始让Lua以类似的方式工作.

Day*_*ayo 9

ngx_lua模块用于直接在nginx webserver中运行Lua代码.可以以这种方式运行整个Lua应用程序,但这不是该模块的特定目标.实际上,某些模块指令特别不应该用于长时间运行或复杂的例程.

您需要使用此模块重新编译Nginx,因为您不能只下载Nginx模块并像这样使用它.

要运行类似于运行PHP的Lua应用程序,可以配置nginx将".lua"请求传递给Lua处理程序(类似于PHP).

  1. 您可以设置一个Web服务器,例如Lua webserver,xavantethttpd甚至Apache和"proxy_pass",类似于Apache for PHP的数量.

  2. 您可以将Lua设置为以CGI格式运行(类似于使用FastCGI的PHP,尽管Lua没有相应的FPM)并根据需要调用它.

对于这两个选项中的任何一个,您都不需要ngx_lua.

基本上,PHP,Lua等属于"CGI"脚本的广泛类别,运行这些脚本的任何"如何"都可以应用于Lua.

BTW openresty只是常规的Nginx,其中包含一些第三方模块,其中包括ngx_lua和openresty背后的人在ngx_lua背后是相同的.

您可以根据需要自行手动将相同的捆绑模块添加到Nginx.


fin*_*nnw 6

我还没有试过官方的nginx发行版,但OpenResty(http://openresty.org/)很容易

请参阅"入门"页面,以便进行简单nginx.conf的测试.