小知识:Centos7 安装Nginx整合Lua的示例代码

前言

本人的使用的电脑是Mac,操作系统是macOS Mojave。电脑上装有虚拟机。

虚拟机上安装Centos7操作系统,在其之上安装Nginx及Luau类库,整个过程是在系统安装完成之后开始记录。

建议安装前先拍快照,出现问题可以恢复

准备工作

如果安装的Linux能够联网,并且外部也能正常使用Linux的端口,那么可以忽略下面两部

1.设置自动获取ip

(1)在Linux上输入命令

?
1
2
[root@localhost ~]ip addr  #查看ip
[root@localhost ~]nmcli connection show

可以查看当前网卡信息

%小知识:Centos7 安装Nginx整合Lua的示例代码-猿站网-插图

我的是 ens33

(2)修改信息

?
1
[root@localhost ~]vi /etc/sysconfig/network-scripts/ifcfg-ens33

将最后一行ONBOOT=no 修改为 ONBOOT=yes

(3)重启网络服务

?
1
[root@localhost ~]# systemctl restart network

%小知识:Centos7 安装Nginx整合Lua的示例代码-1猿站网-插图

2.关闭防火墙

?
1
2
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

3.准备安装是发现没有wget命令,可以先按照线面安装如果下面提示没有wget命令时,可以执行这一步

?
1
[root@localhost ~]#yum -y install wget

安装

1.安装依赖环境

?
1
[root@localhost ~]#yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

2.安装LuaJIT

我是在/usr/local路径下创建了 LuaJIT 文件夹

?
1
2
3
4
[root@localhost LuaJIT]#wget http://luajit.org/download/LuaJIT-2.0.2.tar.gz
[root@localhost LuaJIT]#tar –xvf LuaJIT-2.0.2.tar.gz
[root@localhost LuaJIT]#cd LuaJIT-2.0.2
[root@localhost LuaJIT-2.0.2]#make install

3.安装nginx

(1)下载ngx_devel_kit、lua-nginx-module、nginx

我是在/usr/local路径下创建了 nginx 文件夹

?
1
2
3
4
5
6
7
[root@localhost nginx]#wget https://github.com/simpl/ngx_devel_kit/archive/v0.3.0.tar.gz
[root@localhost nginx]#wget https://github.com/openresty/lua-nginx-module/archive/v0.10.9rc7.tar.gz
[root@localhost nginx]#wget http://nginx.org/download/nginx-1.12.1.tar.gz
#注意下载后的压缩包没有文件名称,但是根据版本号能区分是哪个文件
[root@localhost nginx]#tar -xvf v0.3.0.tar.gz
[root@localhost nginx]#tar -xvf v0.10.9rc7.tar.gz
[root@localhost nginx]#tar -xvf nginx-1.12.1.tar.gz

(2)编译Nginx

?
1
2
[root@localhost nginx]# cd nginx-1.12.1
[root@localhost nginx-1.12.1]#./configure –prefix=/usr/local/nginx –add-module=../ngx_devel_kit-0.3.0 –add-module=../lua-nginx-module-0.10.9rc7

(3)安装

?
1
2
[root@localhost nginx-1.12.1]#make
[root@localhost nginx-1.12.1]#make install

(4)启动nginx

启动时会nginx可能会报错

./nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: N

找不到libluajit-5.1.so.2这个文件

解决办法

1.找到 libluajit-5.1.so.2,libluajit-5.1.so.2.0.2这两个文件复制到 对应的lib下

64位是 /usr/lib64

32位是 /usr/lib

?
1
[root@localhost nginx-1.12.1]#find / -name libluajit-5.1.so.2

发现

%小知识:Centos7 安装Nginx整合Lua的示例代码-2猿站网-插图

文件默认是安装在 /usr/local/lib/libluajit-5.1.so.2下

?
1
2
[root@localhost nginx-1.12.1]#cp /usr/local/lib/libluajit-5.1.so.2 /usr/lib64/
[root@localhost nginx-1.12.1]#cp /usr/local/lib/libluajit-5.1.so.2.0.2 /usr/lib64

在nginx安装目录下,修改nginx.conf文件

在Server代码块下添加如下代码

?
1
2
3
4
location /hello{
default_type text/plain;
content_by_lua ngx.say(“hello,lua”);
}

%小知识:Centos7 安装Nginx整合Lua的示例代码-3猿站网-插图

启动nginx

?
1
[root@localhost nginx-1.12.1]#./configure

在浏览器访问 虚拟对应的地址 http://xxx.xxx.xxx/hello

显示如下

%小知识:Centos7 安装Nginx整合Lua的示例代码-4猿站网-插图

到此就成功了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://segmentfault.com/a/1190000017498497

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:time_t tm timeval 和 时间字符串的转换方法

2023-4-11 2:45:42

建站知识

小知识:浅谈Linux C语言动态库及静态库

2023-4-11 2:53:54

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索