为nginx安装ngx_lua模块

By zhujinliang. Filed in 软折腾  |   
标签:, ,
Home  

之前买了一个域名:zhjl.me,一直闲置着,于是想拿来做短域名。

琢磨在现在的VPS上加短域名,要求一定要轻量,负载小。转了一圈,觉得ngx_lua比较合适,于是开始研究如何安装ngx_lua模块。

ngx_lua模块属于第三方模块,需要自己动手安装吗,而nginx安装模块需要重新编译。一直用的是lnmp一键安装包,该安装包就是编译安装的,从这个包的基础上再安装ngx_lua不麻烦。

模块主页有安装方法介绍:http://wiki.nginx.org/HttpLuaModule#Installation

①安装Lua库,我安装的是LuaJIT2.0.2。下载地址:http://luajit.org/download/LuaJIT-2.0.2.tar.gz
下载后解压,make && make install 即可

②下载两个包 ngx_devel_kit 和 ngx_lua,地址分别是:
http://github.com/simpl/ngx_devel_kit/tags
http://github.com/chaoslawful/lua-nginx-module/tags
解压到一个目录里就可以了

④如果不是从lnmp一键安装包基础上编译,则需要下载nginx源码。

⑤定位到nginx源码,依次执行:

export LUAJIT_LIB=/usr/local/lib
export LUAJIT_INC=/usr/local/include/luajit-2.0
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --add-module=/path_to_ngx_devel_kit --add-module=/path_to_lua-nginx-module
make
make install

建议执行前先停止nginx

⑥执行nginx -t检查配置,不出意外会提示如下错误信息:

error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory

执行命令:

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

或编辑nginx的启动文件,vi /etc/init.d/nginx

在 "do_start() {" 之后添加上面的指令

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*