共计 2390 个字符,预计需要花费 6 分钟才能阅读完成。
前两天遇到 Nginx 使用 if 语句导致 Nginx 逻辑混乱的问题,Mail 给 agentzh@gmail.com。他推荐使用 ngx_lua module 来处理较为复杂的逻辑,毕竟 if is evil。
简述模块安装过程:
——————————————————————————–
## 参考文档
——————————————————————————–
## 项目地址
https://github.com/chaoslawful/lua-nginx-module
##Lua 拓展 nginx 参考文档
http://rhomobi.com/topics/112
##Nginx 与 Lua 参考文档
http://huoding.com/2012/08/31/156
##HttpLuaModule Nginx Wiki
http://wiki.nginx.org/HttpLuaModule
——————————————————————————–
## 下载
——————————————————————————–
wget http://luajit.org/download/LuaJIT-2.0.2.tar.gz
wget https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gz
wget https://github.com/chaoslawful/lua-nginx-module/archive/v0.9.1.tar.gz
wget http://nginx.org/download/nginx-1.4.3.tar.gz
——————————————————————————–
## 首先安装 LuaJIT
——————————————————————————-
##install LuaJIT
tar -zxvf LuaJIT-2.0.2.tar.gz
cd LuaJIT-2.0.2
./configure
make
make install
export LUAJIT_LIB=/usr/local/lib
export LUAJIT_INC=/usr/local/include/luajit-2.0
——————————————————————————–
## 安装 Nginx
——————————————————————————-
## 解压下载下来的 ngx_devel_kit 以及 lua-nginx-module 到 /usr/local/src
##install nginx 为方便调试,我添加了 echo 模块以及开启 debug 模式
./configure –user=www –group=www \
–prefix=/usr/local/nginx-1.4.3 \
–with-http_stub_status_module \
–with-http_ssl_module \
–with-http_realip_module \
–with-http_perl_module \
–with-pcre=/usr/local/src/pcre-8.12 \
–with-debug \
–add-module=/usr/local/src/lua-nginx-module-0.9.1/ \
–add-module=/usr/local/src/ngx_devel_kit-0.2.19/ \
–add-module=/usr/local/src/echo-nginx-module-0.49/
——————————————————————————–
# 启动 nginx
——————————————————————————–
错误处理:找不到库文件,处理方式如下。
echo “/usr/local/lib” > /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig
# 重新启动
/usr/local/nginx-1.4.3/sbin/nginx
推荐阅读 :
Lua 语言 15 分钟快速入门 http://www.linuxidc.com/Linux/2013-06/86582.htm
Lua 程序设计(第 2 版)中文 PDF http://www.linuxidc.com/Linux/2013-03/81833.htm
Lua 程序设计(第二版)阅读笔记 http://www.linuxidc.com/Linux/2013-03/81834.htm
NetBSD 将支持用 Lua 脚本开发内核组件 http://www.linuxidc.com/Linux/2013-02/79527.htm