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

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.xdnf.cn/news/7572.html

相关文章:

  • python 提交命令 到远程windows中
  • Conda环境管理:确保Python项目精准复现
  • 十四、面向对象底层逻辑-BeanFactoryPostProcessor接口设计
  • std::vector<>.emplace_back
  • 演示:【WPF-WinCC3D】 3D工业组态监控平台源代码
  • 02 基本介绍及Pod基础排错
  • 企业网站架构部署与优化-Nginx网站服务
  • Flink并行数据源:ClickSource实现详解
  • 【C++】vector:容器的别样风采
  • 基于Spring Boot与jQuery的用户管理系统开发实践✨
  • 基于NLP技术的客户投诉与需求文本分类方法研究
  • Java中的集合详解
  • 如何进行燃气泄漏检测?
  • 针对 CSDN高质量博文发布 的详细指南
  • Javascript 编程基础(2)基础知识 | 2.2、变量
  • Day31
  • 阿里云服务器Ubuntu的git clone失败问题解决方案
  • C++中的宏
  • 【全网首发】知识库的批量导入以及更新
  • C#学习10——泛型
  • 股指期货模型,简单易懂的套利策略
  • DevExpress GridControl 复选列实时获取选中状态的解决方案
  • VMWare清理后,残留服务删除方案详解
  • bi报表是什么意思?如何制作一张bi报表?
  • 【算法-栈】深入栈模拟题:从题型特征到实现技巧
  • Opencv常见学习链接(待分类补充)
  • 【笔试强训day37】
  • [luogu12542] [APIO2025] 排列游戏 - 交互 - 博弈 - 分类讨论 - 构造
  • Keil软件中STM32(ARM)与C51兼容方法
  • 预先学习:构建智能系统的 “未雨绸缪” 之道