负载均衡域名和路径的流量转发

  • 此文档帮助用户最大程度地安全、可靠地使用负载均衡
  • 七层负载均衡服务支持配置域名或者 URL 转发的策略,这样将来自不同域名或不同 URL 的请求转发给相同或不同的后端云服务器处理。用户可以在同一个监听下添加多条转发策略,每条转发策略会根据用户需求关联不同的后端云服务器组。
  • 域名或 URL 转发规则详情可参照 「配置转发规则」。
  • 本操作以 2 台部署了 Nginx 的云服务器为例,演示如何通过配置不同的域名和 URL 转发规则实现流量的转发。
域名请求流量转发
www.aaa.com云服务器 vpc1-A
www.aaa1.com云服务器 vpc1-A
www.bbb.com云服务器 vpc1-A2

不同域名的流量转发

下面介绍两种通过不同域名进行转发的使用场景。

不同域名指向相同的后端服务

当某个后端服务拥有多个域名时,需要为不同的域名配置转发到相同后端服务的规则。

1.登录 控制台 ,定位到「负载均衡」标签;

2.点击负载均衡列表左上角的「创建负载均衡」按钮,建立面向云服务器的负载均衡;

3.点击「创建监听」按钮,在「监听名称」栏输入testnlb,「监听协议」选择 HHTP 协议,「监听端口」设为 80 ,「调度算法」选「加权轮询」;

4.在「转发规则」处选择「定制规则」,在「域名」栏中输入域名 www.aaa.com 和 www.aaa1.com ,两个域名之间一定要有空格。

为了方便演示,本操作中将负载均衡实例的公网 IP 和域名 www.aaa.com 、www.aaa1.com 在本地 hosts 文件中进行了绑定。

多个域名以空格分割,不超过512个字符。

5.点击「创建目标组」,建立 aaa 目标组,并添云服务器实例 vpc1-A ,端口填 80 ,保留「所有云服务器使用相同端口」前的勾,然后点击「提交」。

  1. URL 填写 / ,目标组选择 aaa ,然后点「立即创建」完成监听创建。

  1. 测试效果

在浏览器中输入 www.aaa.com ,返回如下结果。

在浏览器中输入 www.aaa1.com ,返回与上面同样的结果。

不同域名指向不同的后端服务

当不同的域名访问不同后端服务时,需要通过负载均衡进行相关的域名转发规则配置。

  1. 在上面已经创建的负载均衡 vpcnlb 页面中,选择监听 testnlb:80 ,点击右侧的「设置」进入「设置监听」页面。

  1. 点击「创建目标组」,建立 bbb 目标组,并添云服务器实例 vpc1-A2 ,端口填 80 ,保留「所有云服务器使用相同端口」前的勾,然后点击「提交」。

  1. 点击「+新增定制规则」,在「域名」栏中填入 www.bbb.com ,URL 填写 / ,目标组选择 bbb ,然后点「提交设置」完成监听设置的更改。

为了方便演示,本操作中将负载均衡实例的公网 IP 和域名 www.bbb.com 在本地 hosts 文件中进行了绑定。

  1. 测试效果

在浏览器中输入 www.aaa.com ,返回如下结果。

在浏览器中输入 www.bbb.com ,返回如下结果。

实现相同域名不同路径的流量转发

在域名下需要访问不同页面,可以通过负载均衡进行域名 + URL 转发规则的配置。

  1. 在上面已经创建的负载均衡 vpcnlb 页面中,选择监听 testnlb:80 ,点击右上侧的「目标组管理」创建目标组 jerry 和 tom。

创建 jerry 目标组,并添云服务器实例 vpc1-A ,端口填 80 ,保留「所有云服务器使用相同端口」前的勾,然后点击「提交」。

创建 tom 目标组,并添云服务器实例 vpc1-A ,端口填 80 ,保留「所有云服务器使用相同端口」前的勾,然后点击「提交」。

  1. 在负载均衡 vpcnlb 页面中,点击上侧的「监听管理」选择监听 testnlb:80 ,点击右侧的「设置」进入「设置监听」页面。

  1. 在域名为 www.aaa.com 和 www.aaa1.com 的转发规则中填写下图中三条 URL 转发规则,填写完成后点击「提交设置」完成监听设置的更改。

如果需要将未匹配的请求转发到后端,请添加一条 URL 为 / 的通配规则。

  1. 测试效果

在浏览器中输入 www.aaa.com/jerry ,返回如下结果。

在浏览器中输入 www.aaa.com/tom ,返回如下的结果。

在浏览器中输入 www.aaa.com/ ,返回如下的结果。