Nginx根据url中的path动态转发到upstream的实现

 更新时间:2020年01月03日 14:15:32   作者:四号程序员  
这篇文章主要介绍了Nginx根据url中的path动态转发到upstream的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

在Nginx中,有一些高级场景,需要根据url中的path参数,动态转发到不通的upstream

场景1

/svr1/xxxx?yyy 转发到 svr1:8080/xxxx?yyy

/svr2/xxxx?yyy 转发到 svr2:8080/xxxx?yyy

配置如下:

location ~* /(srv[1-9]+)/(.*)$ {
  allow all;
  proxy_pass http://$1/$2$is_args$args; 
  proxy_set_header Host $host;                         
  proxy_set_header x-forwarded-for $forwarded_addr;                                
}

upstream srv1 {                                                   
   server srv1-ip:8080;
}
      
upstream srv2 {                                                   
   server srv2-ip:8080;
}

场景2

svc1下有3个对等服务srv1,2,3,/svc1/xxxx?yyy 转发到,srv1/2/3:8080/xxxx?yyy

svc2下有3个对等服务srv4,5,6,/svc2/xxxx?yyy 转发到,svr4/5/6:8080/xxxx?yyy

location ~* /(svc[1-9]+)/(.*)$ {                             
  allow all;                                  
  proxy_pass http://$1/$1/$2$is_args$args;                   
  proxy_set_header Host $host;
  proxy_set_header x-forwarded-for $forwarded_addr;                   
}

upstream svc1 {
  server srv1:8080;   
  server srv2:8080;   
  server srv3:8080;                
}

upstream svc2 {
  server srv3:8080;   
  server srv4:8080;   
  server srv5:8080;                
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Nginx使用Lua模块实现WAF的原理解析

    Nginx使用Lua模块实现WAF的原理解析

    waf是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品,本文重点给大家介绍Nginx使用Lua模块实现WAF的原理,需要的朋友参考下吧
    2021-09-09
  • 使用nginx+lua进行token鉴权的方法

    使用nginx+lua进行token鉴权的方法

    使用nginx和lua脚本实现对Minio服务器图片链接的token鉴权,通过反向代理隐藏真实IP,增强安全性,介绍了整个鉴权流程,包括nginx配置和lua脚本的具体实现,适用于需要保护图片不被未授权访问的场景
    2022-05-05
  • Nginx 反向代理缓存(proxy_cache)的实现

    Nginx 反向代理缓存(proxy_cache)的实现

    Nginx的缓存加速功能是由proxy_cache和fastcgi_cache两个功能模块完成,本文主要介绍了Nginx 反向代理缓存(proxy_cache)的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-05-05
  • nginx编译安装出现的常见错误及解决方法

    nginx编译安装出现的常见错误及解决方法

    这篇文章给大家介绍了nginx在编译安装过程中容易出现的常见错误以及解决方法,文中有详细的代码讲解,对我们的学习或工作有一定的帮助,需要的朋友可以参考下
    2023-08-08
  • nginx.conf配置文件结构小结

    nginx.conf配置文件结构小结

    本文主要介绍了nginx.conf配置文件结构小结,nginx.conf主要由events、http、server、location、upstream等块配置项和一些行配置项组成,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • Nginx中配置防盗链的方法实现

    Nginx中配置防盗链的方法实现

    在数字化时代,保护网站内容免受盗链至关重要,Nginx防盗链通过检查请求头Referer字段来拒绝非法来源请求,本文就来详细的介绍一下,感兴趣的可以了解一下
    2024-10-10
  • nginx proxy_redirect的作用及说明

    nginx proxy_redirect的作用及说明

    这篇文章主要介绍了nginx proxy_redirect的作用及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Nginx中使用Lua脚本配置示例

    Nginx中使用Lua脚本配置示例

    这篇文章主要介绍了Nginx中使用Lua脚本配置示例,本文以一个Lua拦截器为例讲解如何配置使用Lua脚本,需要的朋友可以参考下
    2015-06-06
  • 详解Nginx如何配置继承模型

    详解Nginx如何配置继承模型

    这篇文章主要介绍了详解Nginx如何配置继承模型,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • nginx限制ip访问频率的实现示例

    nginx限制ip访问频率的实现示例

    Nginx通过limit_conn_zone 和 limit_req_zone对同一个IP地址进行限速限流,本文主要介绍了nginx限制ip访问频率的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07

最新评论