2012-02-24 14 views
8

Jako ćwiczenie edukacyjne poświęciłem trochę czasu na zdobycie Lua, tworząc kilka podstawowych aplikacji. Dostałem go zainstalowany i działa świetnie na Natty/Ubuntu, jednak jestem trochę zagubiony, jak go dostać, aby grać ładnie z nginx.Uruchamianie Lua pod nginxem (pisanie strony internetowej z Lua)

Czytałem trochę tutaj http://wiki.nginx.org/HttpLuaModule#Installation i sklonowano ten repo https://github.com/chaoslawful/lua-nginx-module na mój/etc/nginx folderu ...

Jednak nadal jestem raczej zagubiony i niepewny, jak dostać pracy nawet na Poziom podstawowy. Czy jest możliwe dołączenie czegoś do mojego pliku nginx.conf do obsługi żądań/lua, czy też muszę ponownie skompilować/ponownie zainstalować nginx? (Wolałbym tego uniknąć).

Używam php pod nginxem przez fpm od dłuższego czasu, ale nie jestem pewien, od czego zacząć, aby Lua działała w podobny sposób.

+0

Nie mam pojęcia o uruchomieniu Lua w Apache/Nginx, ale oto jak uruchomić go w Heroku: http://leafo.net/posts/lua_on_heroku.html – kikito

Odpowiedz

9

Moduł ngx_lua służy do uruchamiania kodu Lua bezpośrednio na serwerze WWW nginx. Możliwe jest uruchamianie w ten sposób całych aplikacji Lua, ale nie jest to konkretny cel tego modułu. W rzeczywistości niektóre dyrektywy modułów nie powinny być używane z długimi lub skomplikowanymi procedurami.

Będziesz musiał przekompilować Nginxa tym modułem, ponieważ nie możesz po prostu pobrać modułu Nginx i używać go w ten sposób.

Aby uruchomić aplikacje Lua podobne do sposobu uruchamiania PHP, możesz skonfigurować nginx, aby przekazywał żądania ".lua" do programu obsługi Lua (podobnego do PHP).

  1. można skonfigurować serwer WWW, takich jak the Lua webserver, xavante lub thttpd lub nawet Apache i "proxy_pass" na to podobnie do Ilu z Apache dla PHP.

  2. Można ustawić Lua uruchamiane jako CGI (podobny do PHP z FastCGI chociaż Lua nie ma odpowiednika FPM) i nazywają to jako potrzebne.

Nie potrzebujesz ngx_lua dla żadnej z dwóch opcji.

Zasadniczo, PHP, Lua i inne należą do szerokiej kategorii skryptów "CGI", a każde "jak" na ich temat można zastosować do Lua.

Openrestyka BTW to zwykły Nginx z niektórymi modułami stron trzecich w pakiecie, w tym ngx_lua, a ludzie stojący za openresty są tymi samymi za ngx_lua.

Możesz samodzielnie dodać dowolną liczbę takich samych modułów do Nginx, jak chcesz.

+0

Dzięki za odpowiedź! Jest to mniej więcej to, czego się spodziewałem, ale dobrze jest to usłyszeć w odniesieniu do mojej sytuacji. –

5

nie próbowałem z oficjalnej dystrybucji nginx, ale to było dość łatwe z OpenResty (http://openresty.org/)

Zobacz stronę „rozpoczął uzyskiwanie” prostego nginx.conf go przetestować.

0

Musisz pobrać trzy moduły i zrekompilować nginx. Tutaj, które trzeba wykonać

./configure --prefix=/usr/local/nginx --add-module=../ngx_devel_kit/ --add-module=../lua-nginx-module/ 

make 

make install 

Po tym można rozpocząć korzystanie z zastosowaniem Lua w nginx polecenia.Plik conf

3

W ubuntu możesz użyć modułu lua dla nginx, po prostu instalując dodatki nginx.