Fork me on GitHub

nginx+lua控制转发资源

nginx+lua控制转发资源

  • nginx+lua安装配置
https://segmentfault.com/a/1190000018641801
  • nginx.conf
upstream aaa{
        server 47.105.104.145:10086 weight=1;
    }
    upstream bbb{
        server 47.105.104.145:5000 weight=1;
    }
server {
        listen       80;
        server_name  localhost;
        set $target 'aaa';
        location /lua_test {
            rewrite_by_lua_file /opt/lua/test.lua;
            proxy_pass http://$target/;
        }
        
}
  • test.lua
local targetName = "aaa";

function setTarget()
    -- 通过cookie转发
    if (ngx.var.http_cookie == "123")
    then
        ngx.var.target = "bbb";
    else
        ngx.var.target = targetName;
    end
end


function exceptionHandle(err)
    ngx.log(ngx.ERR, err);
end

--添加异常处理
xpcall(setTarget, exceptionHandle);
posted @   是阿凯啊  阅读(398)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示