当前位置: 首页 > article >正文

Centos上搭建 OpenResty

一、OpenResty简介

OpenResty 是基于 Nginx 的扩展平台,完全兼容 Nginx 的核心功能(如 HTTP 服务和反向代理),同时通过内嵌 LuaJIT 支持,允许开发者用 Lua 脚本灵活扩展业务逻辑。它简化了动态逻辑的实现。

二、安装相关库文件

yum install pcre-devel openssl-devel gcc curl zlib-devel

三、安装OpenResty

  1. 下载 OpenResty 压缩包

    wget -c https://openresty.org/download/openresty-1.27.1.2.tar.gz
    
  2. 解压压缩包

    tar -zxvf openresty-1.27.1.2.tar.gz
    
  3. 设置config

    ./configure
    
  4. 编译

    make
    
  5. 安装

    make install
    
  6. 查看安装的位置

    whereis openresty
    

四、在配置文件编写动态逻辑

server {listen 8080;server_name localhost;location / {rewrite_by_lua_block {local args = ngx.req.get_uri_args()-- 是否启用容灾策略-- true:不再经过 ShenYu网关-- false: 经过ShenYu网关 local is_active = false-- 启用容灾 且 存在 targetUrl 时 根据 targetUrl 重定向if is_active and args.targetUrl then-- 拿到 targetUrl 参数 local target_url = args.targetUrlargs.targetUrl = nil-- 重构 url  判断参数是否为空 local new_args = ngx.encode_args(args)local new_url = target_url .. (new_args ~= "" and "?" .. new_args or "")-- 重定向到目标地址return ngx.redirect(new_url, ngx.HTTP_MOVED_TEMPORARILY)end-- 其他情况:删除 targetUrl(如果存在)并继续后续处理if args.targetUrl thenargs.targetUrl = nilngx.req.set_uri_args(args)end}# 代理到 ShenYu网关proxy_pass http://localhost:9195/;}
}
http://www.lryc.cn/news/2385556.html

相关文章:

  • Web 服务、 Nfs 服务器以及 Dns 服务器综合实验
  • 保证数据库 + redis在读写分离场景中事务的一致性
  • 汇编语言的子程序魔法:解锁四则运算的奥秘
  • 快速解决Linux 中yum镜像拉取失败问题
  • C#核心概念解析:析构函数、readonly与this关键字
  • HarmonyOS基础组件:Button三种类型的使用
  • 深入理解设计模式之适配器模式
  • 预训练模型:深度学习的通用特征引擎
  • C++题解(33)2025年顺德区中小学生程序设计展示活动(初中组C++)U560876 美丽数(一)和 U560878 美丽数(二)题解
  • 产业互联网+三融战略:重构企业增长密码
  • centos yum源,docker源
  • 通过设备节点获取已注册的 i2c client
  • Centos系统资源镜像配置
  • 【Linux网络篇】:Socket网络套接字以及简单的UDP网络程序编写
  • 学习路之uniapp--unipush2.0推送功能--给自己发通知
  • Java面向对象 一
  • 怎么开发一个网络协议模块(C语言框架)之(二) 数据结构设计
  • 30天自制操作系统day5(vram和显存)(GDT和IDT)(c语言结构体)(汇编-c)(ai辅助整理)
  • 【音频】drc 限幅器、多带限幅器、压缩器、多带压缩器
  • leetcode hot100刷题日记——12.反转链表
  • osgEarth中视角由跟随模式切换到漫游模式后没有鼠标拖拽功能问题分析及解决方法
  • STM32中断优先级分组有哪几种?
  • 《Python语言程序设计》第4章第8题3个个位数之间比大小。‘a小于b而b大于c’这是最有漏洞的一个对比,请问我如何判断a和c
  • Selenium 测试框架 - Python
  • RNN GRU LSTM 模型理解
  • AutoCompose - 携程自动编排原理 -【编排关系DAG的构建】
  • 【MC】红石比较器
  • 危化品经营单位安全生产管理人员考试主要内容
  • get_the_category() 和 get_the_terms() 的区别
  • 红黑树简单模拟实现