在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
转载注明地址:http://www.cnblogs.com/dongxiao-yang/p/5312285.html 本文主要采用手动源码安装的方式将lua-nginx模块编译到nginx源码内部 一:系统版本 1 cat /etc/issue CentOS release 6.7 (Final) Kernel \r on an \m 2 cat /proc/version Linux version 2.6.32-573.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) ) #1 SMP Thu Jul 23 15:44:03 UTC 2015
二 :安装 1 安装LuaJIT 下载地址http://luajit.org/download.html,本次下载的是2.0.0版本 安装命令参考http://luajit.org/install.html教程,本文直接修改了Makefile文件里的默认路径PREFIX到/opt/luajit-2.0.0。 make && make install 安装完毕。 2 安装nginx (1) 下载ng源码并解压 wget http://nginx.org/download/nginx-1.8.1.tar.gz (2)下载 ngx_devel_kit (NDK) 模块 HERE. 解压 (3)下载 ngx_lua HERE.解压 (4)安装pcre依赖库 yum install readline-devel pcre-devel openssl-devel gcc (5)设置变量并编译export LUAJIT_LIB=/opt/luajit-2.0.0/lib(根据本机位置) export LUAJIT_INC=/opt/luajit-2.0.0/include/luajit-2.0(根据本机位置) cd nginx-1.8.1 ./configure --prefix=/opt/nginx-build-1.8.1 \ --with-ld-opt="-Wl,-rpath,/opt/luajit-2.0.0/lib" \ --add-module=/opt/lua-nginx-module-0.10.2 \ --add-module=/opt/ngx_devel_kit-0.3.0rc1 这里注意的是很多人编译的时候没有加选项: 这样会导致编好的nginx在启动的时候会无法找到位于luajit内的类库,类似于 /opt/nginx/sbin/nginx -c /opt/nginx/conf/nginx.conf /opt/nginx/sbin/nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory 这个问题很多人发现后采用了将libluajit-5.1.so.2链接到系统库的做法,比如http://cywhoyi.iteye.com/blog/2118913,以及https://www.ttlsa.com/nginx/nginx-modules-ngx_lua,采用的 ln -s /usr/local/lib/libluajit-5.1.so.2 /lib64/ 这样可以解决问题,但是相当于一个补救方法。 参考问题https://github.com/openresty/lua-nginx-module/issues/8 里agentzh的回答 Hello!
On Sat, Aug 4, 2012 at 1:16 PM, maanas <[email protected]> wrote: Thanks. How can i add this in boot parameters so that i do not have to do it again.
One way is to specify RPATH while building Nginx, for example,
加上--with-ld-opt可以直接在编译阶段解决问题
参考ng官方安装文档定义http://nginx.org/en/docs/configure.html
所以相当于直接把luajit的lib库加到了nginx的搜索库。 (6)启动 ln -s nginx-build-1.8.1 nginx 设为默认路径 /opt/nginx/sbin/nginx -c /opt/nginx/conf/nginx.conf 启动成功
参考资料 3 OpenResty 一个可伸缩的基于 NGINX 的 Web 平台 |
请发表评论