Lua勉強日記(8)
Lua の CGIに再挑戦しました。満足の行く結果ではないけど、開発環境としては正しそうな形でCGIを実行することができました。
keplerのインストール
keplerとういCGIの開発環境を構築するのに便利そうなライブラリを集めたような物のインストーラをダウンロードして、インストールします。
http://luaforge.net/frs/download.php/2722/kepler-1.1-beta2-win32-lua51.exe
普通に入れたら、C:\Kepler\1.1 にインストールされました。
hello.luaの用意
cgilua.htmlheader() cgilua.put([[ <html> <head> <title>Hello World</title> </head> <body> <strong>Hello World!</strong> </body> </html>]])
お決まりの退屈な内容。
サーバの実行
keplerをインストールすると、Xavanteというものが一緒にインストールされます。
Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on handlers. Xavante currently offers a file handler, a redirect handler and a CGILua handler for general files, URL remapping and CGILua 5.0 scripts respectively. A WebDAV handler is in the works.
Xavante – a Lua Web Server – SWiK
Xavanteとは、Luaで書かれたWebサーバのようです。Xavanteが、CGILua handlerを提供するそうなので、特に設定せずに、上のhello.luaが動きそうです。
C:\Kepler\1.1\bin\xavante.exe をダブルクリックして実行すると、タスクトレイにXavanteのアイコンが現れました。右クリックして、「Show Log」を選択すると、ポート8080で起動した旨が出力されていました。
動作確認
上で作成した、hello.lua を、XavanteのDocumentRootである C:\Kepler\1.1\web に配置し、ブラウザで、http://localhost:8080/hello.lua にアクセスしたところ、Hello, worldが表示されました。
まとめ
一応、動いたのですが、何のためにCGIを選択したかと言うと、全てのフェーズ(開発、運用)で、単純にコントロールできるアプリを作りたいからです。そのために、CGIを選択している身としては、簡易専用サーバで、簡単に動いても、全然嬉しくありません。本運用に切り替えるときに、苦労するんじゃ、はやりのフレームワークと同じになってしまう。
apacheで単純にLuaのCGIを伝統的なCGIとして、動かしたい。CGILuaでは難しいのだろうか?