当前位置:首页 > 常见问题 > 正文内容

在使用Nginx系统时,如何安装配置Lua

2023-06-16常见问题1260

一般个人使用Nginx系统的人比较少,但是很多不知道在使用Nginx系统时,如何安装配置Lua,今天你的鱼小编分享一篇在Nginx系统如何安装配置Lua的教程给大家。

Nginx安装配置Lua支持

默认情况下Nginx不支持Lua模块,需要安装LuaJIT解释器,并且重新编译Nginx,或者可使用国人开发的openrestry

需要的模块:LuaJIT,Ngx_devellua-nginx-module

Luajit官网:https://luajit.org

1. 环境准备

1
[root@nginx_lua ~]# yum install -y gcc gcc-c++ make pcre-devel zlib-devel openssl-devel

2. 下载最新的luajitngx_devel_kit以及lua-nginx-module解压

1
2
3
4
5
[root@nginx_lua ~]# mkdir -p /soft/src
[root@nginx_lua ~]# cd /soft/src/
wget https://luajit.org/download/LuaJIT-2.0.4.tar.gz
wget https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gz
wget https://github.com/openresty/lua-nginx-module/archive/v0.10.13.tar.gz

3. 解压ngx_devel_kit以及lua-nginx-module

1
2
[root@nginx_lua src]# tar xf v0.2.19.tar.gz
[root@nginx_lua src]# tar xf v0.10.13.tar.gz

4. 编译安装LuaJIT,即Lua及时编译器

1
2
3
[root@nginx_lua src]# tar xf LuaJIT-2.0.4.tar.gz
[root@nginx_lua src]# cd LuaJIT-2.0.4/
[root@nginx_lua LuaJIT-2.0.4]# make && make install

5. 编译安装Nginx

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
[root@nginx_lua src]# wget http://nginx.org/download/nginx-1.14.2.tar.gz
[root@nginx_lua src]# tar xf nginx-1.14.2.tar.gz
[root@nginx_lua src]# cd nginx-1.14.2
[root@nginx_lua nginx-1.14.2]# ./configure --prefix=/soft/nginx --with-http_ssl_module --with-http_stub_status_module --with-http_dav_module --with-file-aio --with-http_dav_module --add-module=../ngx_devel_kit-0.2.19/ --add-module=../lua-nginx-module-0.10.13/
[root@nginx_lua nginx-1.14.2]# make && make install
[root@nginx_lua nginx-1.14.2]# ln -s /soft/nginx/sbin/nginx /usr/bin/nginx
[root@nginx_lua conf]# vim nginx.conf  #简单配置写nginx测试Nginx是否已经支持Lua(lua指令方式)
...
server {
 location /test_lua {
                default_type text/html;
                content_by_lua_block {
                        ngx.say("Hello Lua!")
                }
        }
...
}
#lua指令方式
#在server 中添加一个localtion
location /hello {
            default_type 'text/plain';
            content_by_lua 'ngx.say("hello, lua")';
        }
#lua文件方式
#在server 中添加一个localtion
location /lua {
    default_type 'text/html';
    content_by_lua_file conf/lua/test.lua; #相对于nginx安装目录
}
#test.lua文件内容
ngx.say("hello world");
//建立软连接,如果不建立软链接,则会出现share object错误
[root@nginx_lua conf]# nginx -t
/soft/nginx/sbin/nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory
[root@nginx_lua conf]#
[root@nginx_lua lib64]# ln -s /usr/local/lib/libluajit-5.1.so.2 /lib64/libluajit-5.1.so.2
[root@nginx_lua lib64]# ll libluajit-5.1.so.2
lrwxrwxrwx 1 root root 33 Dec 21 20:52 libluajit-5.1.so.2 -> /usr/local/lib/libluajit-5.1.so.2
[root@nginx_lua lib64]#
#//加载lua库,加入到ld.so.conf文件(暂时不执行这一步)
#[root@nginx_lua nginx-1.14.2]# echo "/usr/local/LuaJIT/lib" >> /etc/ld.so.conf
[root@nginx_lua conf]# nginx -t
nginx: the configuration file /soft/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /soft/nginx/conf/nginx.conf test is successful
[root@nginx_lua conf]# nginx -s reload

6. 测试安装Lua成功

202304270851513.png 在使用Nginx系统时,如何安装配置Lua  第1张

Nginx中配置lua脚本,访问url总是提示404

然后进入nginx的error.log中发现了以下错误日志

2022/06/09 18:31:46 [error] 24475#24475: *5 failed to load external Lua file "/root/lua/68/update_content.lua": cannot open /root/lua/68/update_content.lua: Permission denied, client: 112.4.254.104, server: localhost, request: "GET /api/update_content HTTP/1.1", host: "your host"

然后在nginx.conf中配置

1
user root root;

再重启nginx即可

以上是在使用Nginx系统时,如何安装配置Lua全文,如觉得本站内容不错记得收藏起来方便下次查阅。你的鱼社交博客支持个人和商家免费投稿,投稿邮箱nideyu#vip.qq.com,请把#改为@。

2023年4月开始,国家取消了扫码优惠政策,现在大部分POS机已经无法再扫码使用,还有部分POS机刷卡是国家费率0.6,但是商家设置了+3的费率存在,也就是每刷一笔多3元钱出来。这样的机子你真敢用吗?你的鱼小编提供两款POS机,一款为持牌机构,一款为国务院批准设立的国有控股股份制企业,两款都是品牌合规产品。(在珠海周边的朋友需要可以免费送货上门,异地需要的客户可快递,一律免费赠送。无押金,不+3。)因国家取消了扫码优惠政策后,商家提供补贴优惠,减免机子60元流量费,以及刷卡费率,减免后的刷卡费率低至0.556,珠海POS机办理小编还提供一款0.38费率收款码秒到收款码无需营业执照单笔2万起步!

20230613232609168666996976025.png 在使用Nginx系统时,如何安装配置Lua  第2张

扫码加好友,免费提供法律咨询,远程收款码办理

申请办理注意事项:

1、下单时请务必确保办卡人、收件人姓名一致,身份证号码、手机号码正确,切勿写大致范围,勿填菜鸟驿站,否则无法配送

2、手机卡仅限本人领取认证激活,禁止转售、帮助他人代替实名制等违法犯罪行为

3、所有的卡请按照运营商要求首充话费激活,否则流量不到账!

本文链接:http://www.nideyu.com/post/155.html

分享给朋友: