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/
相关推荐
茄味琪琪几秒前
机器学习笔记(李宏毅老师2021/2022课程)【更新中】
人工智能·笔记·机器学习
我命由我1234512 分钟前
7.使用 VSCode 过程中的英语积累 - Terminal 菜单(每一次重点积累 5 个单词)
前端·ide·笔记·vscode·学习·编辑器·学习方法
洛寒瑜1 小时前
【读书笔记-《网络是怎样连接的》- 1】Chapter1-从Web浏览器开始
笔记·http·socket·网络基础
多敲代码防脱发1 小时前
Java数据结构链表(LinkedList详解)
java·开发语言·前端·jvm·数据结构·笔记·链表
设定控2 小时前
【Power Query】M函数-List.Sum
经验分享·笔记·excel
开MINI的工科男2 小时前
【笔记】自动驾驶预测与决策规划_Part4_时空联合规划
人工智能·笔记·自动驾驶·预测与决策·时空联合规划
迷迷的k2 小时前
关于 JVM 个人 NOTE
jvm·笔记
浊酒南街8 小时前
吴恩达深度学习笔记:卷积神经网络(Foundations of Convolutional Neural Networks)2.3-2.4
笔记·深度学习·cnn
锅巴编程8 小时前
【芋道源码】gitee很火的开源项目pig——后台管理快速开发框架使用笔记(微服务版之本地开发环境篇)
笔记·gitee·开源