通过 SSL 配置到外部服务器的反向代理,而 tomcat 也使用 SSL

通过 SSL 配置到外部服务器的反向代理,而 tomcat 也使用 SSL

我有两个 Amazon EC2 实例,分别称为 A 和 B。A 运行 Apache 和 Tomcat。在服务器 A 上,Apache 仅使用纯 HTTP。Tomcat 监听 8443,但我使用 iptables 将 443 上的请求重定向到 8443 以供 Tomcat 使用。

我需要改变的是,我想接受 A 上的一些 443 请求并将它们转发到服务器 B。例如,domain.com/app 上的请求转到 B,而 domain.com/service 上的请求转到 A,然后重定向到 Tomcat。

我从未使用过反向代理,但我想确保在反向代理中可以做到这一点。

我不知道我是否可以在这里询问另一个相关问题:我想为我的域使用一个 SSL 证书,但实际上我在 A 和 B 上有两个 Apache 服务器。这在我的计划设置中可行吗?

答案1

您需要在服务器 A 上配置 httpd 实例,以接受 :443 的所有请求,并使用您选择的任何规则将它们转发到服务器 B 上的 httpd 或 Tomcat。我建议使用 mod_proxy_http 来实现这一点。

SSL 证书通常适用于特定主机(可以使用适用于整个域的通配符证书,但价格要高得多)。只要满足以下条件,您就没问题:- 您的域的所有 HTTPS 请求最初都由服务器 A 处理 - 服务器 A 的主机名与您的 SSL 证书匹配

反向代理背后发生的事情对于客户端来说是不可见的,因此您可以拥有任意数量或任意数量的主机。

相关内容