nginx负载均衡-根据访问的目录来区分后端的web

需求:

当请求的目录是 /aaa/ 则把请求发送到机器a;

当请求的目录为/bbb/则把请求发送到机器b;

除了目录/aaa/与目录/bbb/外,其他的请求发送到机器b;

配置文件内容为:

upstream aaa.com
{
            server 192.168.111.6;
}
upstream bbb.com
{
            server 192.168.111.20;
}
server {
        listen 80;
        server_name li.com;
        location /aaa/
        {
            proxy_pass http://aaa.com/aaa/;
            proxy_set_header Host   $host;
            proxy_set_header X-Real-IP      $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        location /bbb/
        {
            proxy_pass http://bbb.com/bbb/;
            proxy_set_header Host   $host;
            proxy_set_header X-Real-IP      $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        location /
        {
            proxy_pass http://bbb.com/;
            proxy_set_header Host   $host;
            proxy_set_header X-Real-IP      $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
}

说明:

  1. 以上配置文件中的 aaa.com 以及 bbb.com 都是自定义的,随便写。
  2. upstream 中的server 可以写多个,例如
upstream aaa.com 
{
            server 192.168.111.6;
            server  192.168.111.4;
            server  192.168.111.5;
}
  1. proxy_pass http://aaa.com/aaa/ 这里必须要加这个目录,不然就访问到根目录了。
  2. 实际上,上述配置文件中, localtion /bbb/ 部分是可以省略掉的,因为后边的 location / 已经包含了/bbb/,所以即使我们不去定义 localtion /bbb/ 也是会访问到 bbb.com 的。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java编程技术

Dubbo剖析-服务分组与服务版本号

在Dubbo中接口类并不能唯一确定一个服务,在dubbo中接口+服务分组+版本号才能唯一确定一个服务,本文就来讲解下服务分组和版本号的使用。

2312
来自专栏更流畅、简洁的软件开发方式

当前登录人管理——UserManage源代码下载(2009.10.16更新)

一、介绍和下载 名称: 当前登录人管理(UserManage) 版本: 1.0.0 上传时间: 2009.10.28 主要功能: 用户登录,保存登录状...

2416
来自专栏皮振伟的专栏

[linux][network]bond技术分析

前言: 云计算场景下,经常会使用到bond技术的主备模式。这里分析一下bond技术的原理。 原理: 简单回忆一下IPV4协议栈,以用户发送一个HTTP请求为...

36811
来自专栏挖坑填坑

Angular4记账webApp练手项目之一(利用angular-cli构建Angular4.X项目)

官方文档 :https://github.com/angular/angular-cli

893
来自专栏web编程技术分享

【php增删改查实例】第二十一节 - 用户修改功能19.1 添加用户修改的按钮

1994
来自专栏liulun

在CentOS上搭建PHP服务器环境

 您也可以使用一键自动部署环境的工具,请参见网友开发的这个工具 http://www.centos.bz/2013/08/ezhttp-tutorial/ ...

4738
来自专栏noteless

如何解决svn清理失败 不能更新 cleanup失败 cleanup乱码 更新乱码 svn更新提示清理 清理乱码不能清理 svn故障修复SVN cleanup 陷入死循环 svn cleanup时遇

平时使用svn的过程中,有的时候由于自己操作故障或者系统原因,导致svn不能更新,提示cleanup也不能成功,陷入了死循环

2812
来自专栏程序员八阿哥

python中os.path 与sys.path

看别人写的代码,会发现两个和路径设置有关的模块 os 和sys。 python 中我们会使用这两个模块和文件路径, 创建文件 之类的 操作。 使用ubunt...

841
来自专栏jmeter高手高高手

Jmeter(二十一)_完整Demo

3:设置你的信息头管理器:application/json;text/plain;charset=UTF-8  

2613
来自专栏用户画像

MAC配置环境变量

 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!

793

扫码关注云+社区

领取腾讯云代金券