关于Lua、Nginx和Redis
在使用Nginx时使用Lua。
安装LuaJIT
安装主程序
这样的感觉。
wget http://luajit.org/download/LuaJIT-2.0.2.tar.gz
tar vxzf LuaJIT-2.0.2.tar.gz
cd LuaJIT-2.0.2
make;sudo make install;
安装LuaRocks
类似于cpanm这样的东西。
sudo apt-get install zip
cd /usr/local/src
wget https://nodeload.github.com/keplerproject/luarocks/zip/master
mv master master.zip
cd luarocks-master
# 適当に環境変数は設定する
./configure --with-lua=/usr/local/bin/luajit --with-lua-lib=/usr/local/lib/ --with-lua-include=/usr/local/include/luajit-2.0
make
sudo make install
# LuaRocks内のShebangが正しくLuaJITを参照しないので置換する
sudo perl -pi -e 's|/usr/local/bin/luajit/bin/lua|/usr/local/bin/luajit|' /usr/local/bin/luarocks
安装Nginx
带着模块过来并进行关联安装。
git clone https://github.com/chaoslawful/lua-nginx-module.git
# 適当に環境変数でLuaJITの位置を指定してあげる
# 適当なNginxのソースに対してconfigureを実行する
# UbuntuだとZlibとかPCREが要求されるので適当に入れておくなり、指定するなり…
LUAJIT_INC=/usr/local/include/luajit-2.0 LUAJIT_LIB=/usr/local/lib/ ./configure --add-module=/usr/local/src/lua-nginx-module
make; sudo make install
在使用Lua时使用Redis
安装
假设Redis已安装。
使用LuaRedis模块。
由于安装了LuaRocks,可以进行安装。
# 適宜sudoする必要があるかも
luarocks install redis-lua
确认
确认下是否已经进入了LuaJIT的repl。
r=require("redis");
c=r.connect("localhost" , 6379);
c:set("hoge" , 1);
print(c:get("hoge"));
-- 1