0

我有一个相当全面的应用程序负载均衡器,它根据主机名设置路由。

但是,我正在尝试介绍以下内容,但无法使路径路由正常工作。

即我按这个顺序排列它们。

  1. licence.example.com/api -> 目标组 B
  2. license.example.com -> 目标组 A

我看到的是所有内容都被路由到目标组 A。

我将规则 1 设置为托管 licence.example.com,路径:/api/* 并将规则 2 设置为托管 licence.example.com

我试过通过交换它们来改变顺序。而且我尝试将规则 2 的路径添加为 /* ,但它不起作用。

AWS 负载均衡器是否无法进行这种最基本的配置?我将不得不把它扔掉并使用 nginx 吗?

4

1 回答 1

2

两个问题。

  1. UI 中显示的顺序很重要。较高的规则是列表具有较高的优先级。所以首先我必须确保首先发生与路径的匹配。

  2. 对 /api/* 的请求通过包含路径 /api/ 的应用程序到达。没有像 nginx 这样的重写,它会剥离它。因此,解决方法是对目标组 B 监听的应用程序进行一个小的更改,以期望 /api/ 路径。我将此设置为配置值,然后一切正常。

于 2018-05-03T00:12:15.917 回答