0

我在两个 Ubuntu 实例中使用 Tomcat,它们位于 Amazon Web Services 云中的 ELB(弹性负载均衡器)后面。每个 Tomcat 安装在同一引擎中都有多个虚拟主机。ELB 进行健康检查以查看主机是否处于活动状态。但是在主机内部,哪个 Tomcat 虚拟主机会收到健康检查请求?当我定义健康检查时,我只指定端口和 URL 的最后一部分。所以我不知道执行的健康检查的完整 URL 是什么。现在,在引擎中声明为默认主机的 Tomcat 虚拟主机是接受检查的主机,因为它是默认主机。但实际上该主机不是为应用程序提供服务的主机,因此它不应该是接收检查请求的主机。

换句话说:如果检查使用端口 80,并且 URL 的最后一部分是“/hello.html”,那么完整的检查 URL 会在这里:http:///hello.html

“what come here?”的内容是什么?实例的本地/私有 IP?

4

1 回答 1

1

它总是会转到定义为 localhost 的虚拟主机。

我建议将您想要进行健康检查的虚拟主机设置为 localhost,然后将该虚拟主机上的主机名别名设置为您想要指向它的域名。

所以你会有:

  <Host name="localhost" ...>
    <Alias>mydomain.com</Alias>
  </Host>
于 2012-04-12T01:02:09.963 回答