您可以将所有证书串联到文件say中haproxy1.pem
,haproxy2.pem
或者可以指定包含所有pem文件的目录。
cat cert1.pem key1.pem > haproxy1.pem
cat cert2.pem key2.pem > haproxy2.pem
根据haproxy文档
然后在配置上使用类似这样的东西:
defaults
log 127.0.0.1 local0
option tcplog
frontend ft_test
mode http
bind 0.0.0.0:443 ssl crt /certs/haproxy1.pem crt /certs/haproxy2.pem
use_backend bk_cert1 if { ssl_fc_sni my.example.com } # content switching based on SNI
use_backend bk_cert2 if { ssl_fc_sni my.example.org } # content switching based on SNI
backend bk_cert1
mode http
server srv1 <ip-address2>:80
backend bk_cert2
mode http
server srv2 <ip-address3>:80
了解有关SNI的更多信息
请记住,在对haproxy的开发阶段中正在支持SSL,并且显然它对性能的影响很大。
此线程中还讨论了其他解决方案:https : //stackoverflow.com/questions/10684484/haproxy-with-multiple-https-sites
希望这可以帮助。