【问题标题】:ALB to map multiple context path on one common port (tomcat)ALB 在一个公共端口(tomcat)上映射多个上下文路径
【发布时间】:2018-11-12 14:11:03
【问题描述】:

目前,我们有基于 tomcat 的部署和一个 Apache 服务器来管理同一端口上的多个上下文路径(v-host 配置)

例如,

ProxyPassMatch /test(.) http://127.0.0.1:7077/test$1*

ProxyPassMatch /test2(.) http://127.0.0.1:7077/test2$1*

等等

现在我们正在转向 AWS 的 ALB,我们希望将 ALB 中的所有上下文路径映射到 Apache 配置文件中。

我们创建了 ALB --> 80 端口上的侦听器 --> 使用端口 7077 的必要实例创建的目标 --> 健康检查通过

监听规则是,

上下文路径 /test --> 转发到 7077 端口的目标组

上下文路径 /test2 --> 转发到 7077 端口的目标组

但在测试时,当我们关闭 Apache 并测试 ALB 时,它显示 502 Bad Gateway

有什么解决办法吗?

【问题讨论】:

    标签: amazon-web-services amazon-elb


    【解决方案1】:

    Application Load Balancer 无法像使用典型反向代理那样重写通往目标的路径。

    https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#path-conditions 说:

    路径模式用于路由请求,但不会改变它们。例如,如果规则的路径模式为 /img/*,则该规则会将 /img/picture.jpg 的请求作为 /img/picture.jpg 的请求转发给指定的目标组。

    Tomcat 特定:

    也许您可以让 tomcat 应用程序侦听多个路径,并在 context.xmlserver.xml 中进行配置。这个question 有一些建议,但似乎如果你有多个上下文,应用程序将运行两次并占用两倍的内存。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-23
      • 2017-01-30
      • 2015-02-13
      • 1970-01-01
      • 1970-01-01
      • 2016-02-26
      • 2011-02-01
      • 2011-01-02
      相关资源
      最近更新 更多