Centos7 安装Nginx整合Lua的示例代码

前言

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

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

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

准备工作

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

1.设置自动获取ip

(1)在Linux上输入命令

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

可以查看当前网卡信息

我的是 ens33

(2)修改信息

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

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

(3)重启网络服务

[root@localhost ~]# systemctl restart network

2.关闭防火墙

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

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

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

安装

1.安装依赖环境

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

2.安装LuaJIT

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

[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 文件夹

[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

[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)安装

[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

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

发现

文件默认是安装在 /usr/local/lib/libluajit-5.1.so.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代码块下添加如下代码

location /hello{
    default_type 'text/plain';
    content_by_lua 'ngx.say("hello,lua")';
  }

启动nginx

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

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

显示如下

到此就成功了

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

(0)

相关推荐

  • 虚拟机中CentOS7设置固定IP地址的方法

    由于我的开发环境是在VMWare虚拟机里安装Centos,然后在host文件中设置拦截,这样就可以直接跳转虚拟机的CentOS,但是虚拟机的IP地址总是会变,就要随时修改host文件,很麻烦.决定虚拟机采用固定IP方式,记录下步骤,方便以后查阅,希望也能帮助到其他的小伙伴. 环境:主机是Windows 10 VMWare 12 Centos 7.5 1. 设置虚拟机的网络连接方式 点击虚拟机名称->右键->设置 修改网络适配器.网络连接方式可以选择"NAT模式"或者&quo

  • Centos7 安装mysql 8.0.13(rpm)的教程详解

    yum or rpm? yum安装方式很方便,但是下载mysql的时候从官网下载,速度较慢. rpm安装方式可以从国内镜像下载mysql的rpm包,比较快.rpm也适合离线安装. 环境说明 •操作系统:Centos7.4 (CentOS-7-x86_64-Minimal-1804.iso) •mysql:mysql8.0.13 •卸载系统自带的mariadb-lib •查看mariadb版本 rpm -qa|grep mariadb mariadb-libs-5.5.56-2.el7.x86_6

  • win10 装centos7 虚拟机

    1.下载VMware Workstation 64版本 https://www.vmware.com/products/workstation-pro/workstation-pro-evaluation.html 2.下载CentOS-7-x86_64-DVD-1810 https://www.centos.org/download/ 3.在虚拟机上安装系统 4.配置网络,虚拟机->设置->设置网络,设置桥接模式 5.虚拟机配置IP 在进入系统之前,我们先确认一下主机的ip地址.网关.DNS

  • centos7下rsync+crontab定期同步备份

    最近需求想定期备份内部重要的服务器数据到存储里面,顺便做个笔记 以前整过一个win下的cwrsync(客户端)+rsync(服务端:存储)的bat脚本 这次整一个Linux下的脚本sh,执行定期自动备份数据 客户端:192.168.0.100(rsync-Linux) 服务端:192.168.0.252(存储) rsync简介: rsync是linux系统下的数据镜像备份工具.使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主机同步. 1.服务端

  • 解决Centos7下crontab+shell脚本定期自动删除文件问题

    问题描述: 最近有个需求,就是rsync每次同步的数据量很多,但是需要保留的数据库bak文件 保留7天就够了,所以需要自动清理文件夹内的bak文件 解决方案: 利用shell脚本来定期删除文件夹内的任务 1.创建shell文件 [root@zabbix script]# vim backup_sql_clean.sh #!/bin/sh find /data1/backup/KDKDA\$AGKDPAYKT/XNAKSD/FXUIJ -mtime +10 -name "*.bak" -

  • 在CentOS7上搭建Jenkins+Maven+Git持续集成环境的方法

    本文以部署 Spring boot + Maven 项目为例,使用码云作为代码托管仓库,在 CentOS 7 上搭建 Jenkins 持续集成环境. 1. 准备工作 1.1 安装 Java 环境 Jenkins 是基于 Java 开发的持续集成工具,需要在 Java 环境下运行.用下面命令查看系统是否已安装 Java: yum list installed | grep jdk 如果没有,使用 yum search 命令查找 openjdk 版本,选择合适的 jdk 进行安装: yum sear

  • CentOS7.6系统下使用yum配置lnmp环境的方法

    一.安装版本详情 Server: MariaDB Server version: 5.5.60-MariaDB MariaDB Server [root@ln-125 ~]# cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) [root@ln-125 ~]# nginx -v nginx version: nginx/1.14.2 [root@ln-125 ~]# php-fpm -v PHP 5.4.16 (fpm-fcg

  • centos7上编译安装php7以php-fpm方式连接apache

    好几个月之间其实已经配置过LAMP LNMP等等一些配置,以前配置都是按照晚上抄的,基本都能配置出来,现重头学想自己配置下,但是发现好多配置都忘了 ,中间踩了几个坑,记录下,也更彻底的学习下..... ./configure --prefix=/usr/local/php7 --enable-fpm 以fpm模式安装,这个还可以改成 --with-apxs2=PATH模式,两者只能取其一 --enable-so --with-config-file-path=/etc 只能配置文件位置 --wi

  • CentOS7.3下mysql 8.0.13安装配置方法图文教程

    一.基础环境 1.操作系统:CentOS 7.3 2.MySQL:8.0.13 链接: https://pan.baidu.com/s/13-j_umr7eEnKFaugw4YTqQ 提取码: 62yt 二.安装MySQL 1.卸载mariadb数据库 rpm -qa | grep mariadb yum -y remove mariadb-libs-5.5.52-1.el7.x86_64 2.安装相关依赖(本文使用CentOS 7.3镜像做本地离线yum源) yum -y install op

  • Centos7修改主机名hostname的三种方法

    方法一 hostnamectl修改 Step1 查看主机名 hostname Step2  修改主机名 命令形式 hostnamectl set-hostname 主机名 修改 hostnamectl set-hostname Master Step3  再次查看主机名 hostname 无需重启只需新开会话便可变为新的主机名 方法二 通过修改文件 修改文件 vi /etc/hostname 添加主机名 Slave01 vi /etc/sysconfig/network 添加IP和hostnam

随机推荐