我们有几个http站点在负载均衡器后面运行(具有使用hearbeat的故障转移功能)和一个https站点。一切都运行良好,但现在我想 添加另一个https站点。我找不到任何托管多个https网站的参考资料。
有没有人使用HAproxy托管多个https网站?你能告诉我怎样才能实现这个目标?请帮助我提供你的意见。
谢谢,
Santhosh
答案 0 :(得分:3)
您必须根据前端(IP地址),主机头或TLS SNI(“服务器名称指示符”)编写规则来选择后端。什么是最好的取决于您的应用程序。如果您需要支持不支持SNI的客户(真的很老);然后他们将无法获得真正的TLS,你必须根据主机头选择后端。
由于我在下面写了答案,haproxy已经添加了ssl作为新功能。我在https://manage.ntppool.org/上使用它并且它运行良好。您需要最新的1.5开发版本(如果您在阅读本文时已经发布,则需要1.6版本。)
在HAProxy 1.8中也支持http / 2。
2012年答案是:
HAProxy本身不支持SSL,您必须在前面运行“SSL unwrapped”。热门选项是stunnel和stud。对于HTTP,您也可以使用Apache或Nginx。
答案 1 :(得分:0)
您可以使用HAProxy启动任意数量的启用HTTPS的网站。您必须在HAProxy框中执行SSL卸载。 ha-proxy将通过HTTP将请求重定向到您的服务器(站点框)。在HA-Proxy上进行SSL加载后,您可以通过解析URI来区分针对您的2个不同https网站的请求
有关详细信息,请参阅HA-Proxy文档,请参阅hdr_dom和acl部分,这将解决您的问题。