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

news/2024/12/22 9:03:26/

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

首先,使用 curl 或 wget 下载指定版本的 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/

http://www.ppmy.cn/news/1534242.html

相关文章

动手学深度学习(李沐)PyTorch 第 7 章 现代卷积神经网络

7.1 深度卷积神经网络(AlexNet) 在计算机视觉中,直接将神经网络与其他机器学习方法进行比较也许不公平。这是因为,卷积神经网络的输入是由原始像素值或是经过简单预处理(例如居中、缩放)的像素值组成的。但…

【前端安全】burpsuite前端jsEncrypter插件详解

❤️博客主页: iknow181 🔥系列专栏: 网络安全、 Python、JavaSE、JavaWeb、CCNP 🎉欢迎大家点赞👍收藏⭐评论✍ 0x01 前言 在渗透测试的时候,大多数网站登录密码都是明文加密提交到后端进行登录验证&#…

关于CSS 案例_新闻内容展示

新闻要求 标题:居中加粗发布日期: 右对齐分割线: 提示, 可以使用 hr 标签正文/段落: 左侧缩进插图: 居中显示 展示效果 审核过不了&#xff0c;内容没填大家将就着看吧。 代码 <!DOCTYPE html> <html lang"en"> <head><meta charset&qu…

基于单片机电容测量仪仿真设计

文章目录 前言资料获取设计介绍设计程序具体实现截图设计获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师&#xff0c;一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们…

详解Linux中的namespace

Linux 中有多种命名空间&#xff08;namespace&#xff09;&#xff0c;每种命名空间用于隔离不同的资源和功能。以下是常见的命名空间及其用途&#xff1a; 1. Mount Namespace 用途&#xff1a;隔离文件系统挂载点。每个挂载命名空间可以拥有自己的挂载点和文件系统视图&am…

【SpringBoot详细教程】-03-整合Junit【持续更新】

JUnit是一个用于Java编程语言的测试框架。它支持自动化单元测试&#xff0c;可以帮助开发人员测试代码的正确性和健壮性。JUnit提供了一组注解、断言和测试运行器&#xff0c;可以方便地编写和运行单元测试。 SpringBoot 整合 junit 特别简单&#xff0c;分为以下三步完成 在…

【Linux的内存管理】

为什么需要内存管理 分段和分页内存分段内存分页 分页情况下&#xff0c;虚拟内存如何映射到物理地址页表原理多级页表 TLB快表段页式内存管理需要为什么进程地址空间Linux的进程虚拟地址空间管理进程地址空间如何分配虚拟内存虚拟内存的管理程序编译后的二进制文件如何映射到虚…

基于深度学习的视频内容理解

基于深度学习的视频内容理解&#xff08;Video Content Understanding, VCU&#xff09;是一项关键技术&#xff0c;旨在通过神经网络模型自动分析、解读和提取视频中的语义信息。深度学习方法能够利用视频的时序和空间特性&#xff0c;提取多模态信息&#xff08;如图像、音频…