centos7编译安装openresty+lua-resty-http+lua-resty-openssl-master

OpenResty 是一个基于 Nginx 的高性能 Web 平台,它将 Nginx 服务器与 Lua 脚本语言紧密集成在一起,从而使得用户可以使用 Lua 编写各种 Web 应用和服务。OpenResty 提供了一系列的模块和工具,使得开发人员可以轻松地构建动态 Web 应用程序、RESTful API、微服务等。

主要特点

  1. 高性能:OpenResty 基于 Nginx,这使得它可以处理大量并发连接和请求,表现出色。

  2. Lua 脚本支持:通过将 Lua 脚本语言嵌入 Nginx,开发人员可以用 Lua 编写复杂的业务逻辑,包括处理 HTTP 请求、操作数据库等。

  3. 丰富的模块 :OpenResty 附带了许多实用的模块(如 lua-resty-httplua-resty-sessionlua-resty-redis 等),这些模块可以帮助开发人员实现各种功能,如 API 调用、会话管理、缓存等。

  4. 良好的扩展性:开发人员可以方便地编写自定义的 Lua 模块,扩展 OpenResty 的功能。

  5. 友好的开发体验:OpenResty 提供了良好的开发工具和文档支持,使得开发人员能够快速上手。

  6. 广泛应用:由于其高性能和灵活性,OpenResty 已被许多大型网站和应用广泛采用,如 GitHub、Taobao、知乎等。

在 CentOS 7 上编译安装 OpenResty 1.25.3.1:

1. 环境准备

确保系统是最新的,并安装必要的依赖包:

复制代码
sudo yum update
sudo yum install -y gcc gcc-c++ make curl unzip zlib-devel pcre-devel openssl-devel git

2. 下载并安装 OpenResty 1.25.3.1

2.1 下载 OpenResty

访问 OpenResty 下载页面 或直接使用 wget 下载指定版本:

复制代码
wget https://openresty.org/download/openresty-1.25.3.1.tar.gz
tar -zxvf openresty-1.25.3.1.tar.gz
cd openresty-1.25.3.1/
2.2 编译和安装 OpenResty
复制代码
./configure --prefix=/usr/local/openresty
make
sudo make install
2.3 设置环境变量

将 OpenResty 的二进制文件路径添加到路径中:

复制代码
echo 'export PATH=$PATH:/usr/local/openresty/bin' >> ~/.bashrc
source ~/.bashrc

在OpenResty中安装插件lua-resty-http

1. 下载 lua-resty-http

首先,使用 curlwget 下载指定版本的 tar.gz 压缩包:

复制代码
# 使用 curl 下载
curl -LO https://github.com/ledgetech/lua-resty-http/archive/refs/tags/v0.17.2.tar.gz

# 或使用 wget 下载
wget https://github.com/ledgetech/lua-resty-http/archive/refs/tags/v0.17.2.tar.gz

2. 解压缩文件

解压缩下载的文件:

复制代码
tar -xzvf v0.17.2.tar.gz

这将创建一个名为 lua-resty-http-0.17.2 的文件夹。

3. 移动模块到 OpenResty 的合适目录

将解压后的 lua-resty-http 模块移动到 OpenResty 的 lualib/resty/ 目录下。例如,如果 OpenResty 安装在 /usr/local/openresty 目录下,执行以下命令:

复制代码
sudo mkdir -p /usr/local/openresty/lualib/resty/  # 创建目标目录(如果不存在)
sudo mv lua-resty-http-0.17.2/lib/resty/http.lua /usr/local/openresty/lualib/resty/
sudo mv lua-resty-http-0.17.2/lib/resty/http_header.lua /usr/local/openresty/lualib/resty/
sudo mv lua-resty-http-0.17.2/lib/resty/http_connect.lua /usr/local/openresty/lualib/resty/

在OpenResty中安装插件lua-resty-openssl

1. 下载 lua-resty-openssl

使用 git 克隆源代码库:

复制代码
git clone https://github.com/fffonion/lua-resty-openssl.git

如果没有安装 git,你也可以直接访问 该链接 并下载 ZIP 文件,然后解压。

2. 移动模块到 OpenResty 的合适目录

假设你在 /usr/local/openresty 目录中安装了 OpenResty,使用以下命令将模块移动到 OpenResty 的 lualib 目录:

复制代码
# 创建目标目录(如果不存在)
sudo mkdir -p /usr/local/openresty/lualib/resty/

# 移动 lua-resty-openssl 的目录到目标位置
sudo mv lua-resty-openssl/lib/resty/openssl.lua /usr/local/openresty/lualib/resty/
sudo mv lua-resty-openssl/lib/resty/openssl/* /usr/local/openresty/lualib/resty/openssl/
相关推荐
xieliyu.14 分钟前
计算机网络:Fiddler 抓包工具使用教程 + HTTP 协议报文格式详解
java·笔记·计算机网络·测试工具·http·java-ee·fiddler
点心的游戏开发世界25 分钟前
GDScript 入门笔记(二):变量与数据类型
笔记·游戏引擎·godot
蒸蒸yyyyzwd39 分钟前
CPP选手秋招准备学习笔记day25
笔记·学习
摇滚侠1 小时前
《SpringBoot 3:入门与应用实战》第 13 章 整合 MyBatis 使用 MyBatis-Plus 阅读笔记 40
spring boot·笔记·mybatis
INS_KF11 小时前
【编程笔记】成员函数中两个 const 的区别(const Data &getData() const;)
前端·javascript·笔记
tju新生代魔迷12 小时前
Verilog HDL 学习笔记(十三)| 第13章 编程语言接口(PLI)
笔记·学习
点心的游戏开发世界13 小时前
UnityShaderGraph滚动UV笔记
笔记·uv
瑞码空间13 小时前
git知识点黄金笔记
笔记·git·elasticsearch
天若有情67315 小时前
Node+MySQL小型全栈笔记项目实战课程分享
数据库·笔记·mysql
袋鼠云数栈17 小时前
整库迁移与分库分表同步:批量数据搬迁的配置简化思路
jvm·数据库·oracle