Tomcat AJP 请求到普通 HTTP

Tomcat AJP request to normal HTTP

我在 Tomcat 8 上部署了一个公司应用程序,另一个应用程序向使用 AJP ` 协议访问该应用程序的 Apache 服务器发出请求。我是 AJP 的新手。我已经使用带有上述应用程序的容器创建了一个 AWS 基础设施(作为上述应用程序的替代方案)。问题是我想避免使用 Apache 并使用 Amazon 的 ALB(应用程序负载平衡器),到目前为止它正在工作,除了 AJP 请求。我遇到的问题是,当不使用 Apache 时,我不再需要使用 AJP,我想用 HTTPS 替换它。在 Tomcat 中启用 HTTPS 连接器可以解决问题吗? Apache 配置中的行是:

ProxyPass               /pmaddon-a  ajp://*.*.*.*:8009/pmaddon-a
ProxyPassReverse        /pmaddon-a  ajp://*.*.*.*:8009/pmaddon-a

总而言之,如果我跳过 Apache 服务器并直接使用 HTTPS(当然启用了 HTTPS 连接器)调用 Tomcat,它会得到与我现在使用 AJP 连接器相同的结果吗?

我明白你想做的是:

  • 使用 TOMCAT 连接器直接访问您的应用程序
  • 去掉前面的APACHE及其与TOMCAT
  • 的AJP通信

这是可行的,也许您需要调整其他应用程序(调用 apache 的应用程序)以指向到达 TOMCAT 连接器的 URL。

如果问题是你是否会得到相同的结果:

我明白了。 AJP 和 HTTP 都提供相同的内容,只是协议不同。

你没有说明你有没有HA,所以我没有进入那个话题。

AJP 与 http/https 非常相似,除了它是 Apache 的二进制协议(Apache Jserv 协议),但它的性能更好,因为它的大小几乎是 http/https 的 1/5。 它广泛用于反向代理 Web 服务器,其中 Web 服务器使用 AJB 与应用程序服务器通信。

如果您直接连接到 Tomcat 连接器,则无需坚持使用 AJP