您的位置:首页 > 运维架构 > Nginx

将lua编译进nginx

2015-06-19 15:33 603 查看
1、先安装lua-jit,网上说也可以下载lua,不过lua-jit效率比较高,地址:http://luajit.org/download.html
我下的是2.0.3版本的
下载解压后,直接make && make install就可以了,默认安装在/usr/local目录

2、下载ngx devel包
地址:https://github.com/simpl/ngx_devel_kit/tags
注意,这个是一个nginx的扩展,不需要编译

3、下载nginx的lua扩展 https://github.com/openresty/lua-nginx-module/archive/v0.9.8.tar.gz
4、导出两个变量

export LUAJIT_LIB=/usr/local/lib
export LUAJIT_INC=/usr/local/include/luajit-<VERSION>
其中LUAJIT表示luajit的安装目录

5、接下来是编译nginx了
./configure --prefix=/opt/nginxrw --with-http_gzip_static_module --with-http_stub_status_module
--with-http_ssl_module    --add-module=/data/src/lua-nginx-module-0.9.8 
--add-module=/data/src/ngx_devel_kit-0.2.19
其中两个--add-module表示lua的nginx模块和ngx devel包扩展

启动时,可能报某个库的路径找不到:
sbin/nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory

用ldd命令可以看下某个二进制文件的引用的动态库

解决办法:
echo "/usr/local/lib" >> /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig

ok,是不是编译成功了呢,开始编写lua脚本吧
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: