ubuntuでlua-nginx-moduleを試してみる

2通りの手段がある。

  • nginx-extrasパッケージを入れる
  • ビルドする


前者が簡単だが、今回はビルドしたのでざっと手順

必要なモノ入れる

sudo apt-get update
sudo apt-get install -y lua5.1 liblua5.1-0 liblua5.1-0-dev
sudo apt-get install build-essential openssl git

落としてきて解凍する

wget 'http://nginx.org/download/nginx-1.7.4.tar.gz'
tar -xzvf nginx-1.7.4.tar.gz
cd nginx-1.7.4/

モジュールをcloneする

git clone https://github.com/openresty/lua-nginx-module.git
git clone https://github.com/simpl/ngx_devel_kit.git

シンボリックリンク貼っとく

sudo ln -s /usr/lib/x86_64-linux-gnu/liblua5.1.so /usr/lib/liblua.so

ビルドする

./configure --add-module=/home/vagrant/nginx-1.7.4/lua-nginx-module --add-module=/home/vagrant/nginx-1.7.4/ngx_devel_kit  --with-http_ssl_module
make
sudo make install

hello world

nginx.confを編集して、nginxを起動する

  server{
  ...
    location /hello {
      add_header Content-type text/plain;
      content_by_lua '
      ngx.say("hello world")
      ';
    }
  }
sudo /usr/local/nginx/sbin/nginx

確認する

vagrant@vagrant:~$ curl http://localhost/hello
hello world