nginx调用lua模块失败

来源:2-33 【讨论题】结合HTTP不同版本协议,聊聊Nginx的应用

狗爪

2021-04-27

按照教程安装了nginx+lua
下图是安装后的nginx -V信息图片描述
下图是我nginx lua的一些安装软件版本图片描述
default.conf 测试lua
但我测试时 curl 127.0.0.1:8084/lua 报以下错误图片描述

写回答

1回答

Jeson

2021-05-10

好像还没有lua模块支持,建议c重新编译nginx

1、下载相关库文件到本地

#mkdir /tmp/lua

#cd /tmp/lua

#wget https://github.com/openresty/lua-nginx-module/archive/v0.10.14rc3.tar.gz

#wget http://luajit.org/download/LuaJIT-2.0.5.tar.gz

#tar zxf v0.10.14rc3.tar.gz


2、编译安装LuaJIT

#tar zxf LuaJIT-2.0.5.tar.gz

#cd LuaJIT-2.0.5

#make

#make install


3、重新编译nginx

#cd /path/to/nginx-1.15.2

查看原来的编译参数然后复制configure arguments:后面的参数,然后添加lua模块重新编译

#nginx -V

#./configure --prefix=/usr --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre --add-module=/usr/local/fastdfs-nginx-module/src/ --add-module=/tmp/lua/lua-nginx-module-0.10.14rc3/ --with-ld-opt="-Wl,-rpath,/usr/local/lib"

#make -j2

#make install

注:报错nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory 是因为没有加--with-ld-opt="-Wl,-rpath,/usr/local/lib" 可以执行ln -s /usr/local/lib/libluajit-5.1.so.2 /lib64/libluajit-5.1.so.2


0
0

Nginx入门到实践-Nginx中间件应用+搭建Webserver架构

中间件、负载均衡、应用层安全防护、动静分离、Nginx+LUA开发等

4183 学习 · 908 问题

查看课程