1. ホーム
  2. スクリプト・コラム
  3. ルア

LinuxシステムへのNginx Lua環境のインストール

2022-01-06 16:13:25

また、以下の公式インストールガイドもご参照ください。 lua-nginx-module のインストール

参考までに私のインストール方法をまとめておきます。

最新版のNginx、LuaJIT、ngx_devel_kit、lua-nginx-module、およびその他のインストールファイルが必要です。

Nginx
/{br LuaJIT LuaでもLuaJITでも可能ですが、パフォーマンス上LuaJITのインストールを推奨します。
ngx_devel_kit
lua-nginx-module

ダウンロードする参考コマンドです。

$ curl -O http://nginx.org/download/nginx-1.10.1.tar.gz
$ curl -O http://luajit.org/download/LuaJIT-2.1.0-beta2.tar.gz
$ curl -L -O https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gz
$ curl -L -O https://github.com/openresty/lua-nginx-module/archive/v0.10.5.tar.gz


LuaJITのインストール

$ wget http://luajit.org/download/LuaJIT- .tar.gz
$ tar zxvf LuaJIT- .tar.gz
$ cd LuaJIT-
$ make
$ sudo make install


lua-nginx-moduleをコンパイルしてインストールします。

export LUAJIT_LIB=/usr/local/lib
export LUAJIT_INC=/usr/local/include/luajit-2.1

cd nginx-1.10.1
. /configure --prefix=/opt/nginx --with-ld-opt="-Wl,-rpath,/usr/local/lib" --add-module=/path/to/ngx_devel_kit-0.3.0 --add- module=/path/to/nginx/lua-nginx-module-0.10.5
make
make install


ダイナミックモジュールメソッド

Nginx 1.9.11 からは、.NET の実行時に -add-dynamic-module=PATH に置き換えることで、モジュールを動的モジュールとしてコンパイルできます。 コンパイル後は nginx.conf の load_module で、 -add-dynamic-module=PATH: /configure.Debian のコマンドで動的に読み込ませることができます。

load_module /path/to/modules/ndk_http_module.so;
load_module /path/to/modules/ngx_http_lua_module.so;
lua cjson install


エウレカ・ズールゲートウェイ

cjson のインストールとコンパイルには lua ランタイムが必要です。コンパイル前に MakeFile の LUA_VERSION, LUA_INCLUDE_DIR, LUA_CMODULE_DIR パラメータを変更し、cjson モジュールが lua ライブラリとヘッダーファイルのディレクトリを認識して、正しくコンパイルとインストールができるようにする必要があります。

ダウンロードして解凍してください。

wget http://www.kyne.com.au/~mark/software/download/lua-cjson-2.1.0.tar.gz
tar -zxvf cjson-2.1.0.tar.gz
cd cjson-2.1.0

MakeFileを修正する。

LUA_VERSION = luajit-2.1
LUA_INCLUDE_DIR = $(PREFIX)/include/$(LUA_VERSION)
LUA_CMODULE_DIR = $(PREFIX)/lib

make & sudo make install
sudo cp cjson.so /usr/local/lib/lua/5.1/