Как настроить HAproxy для нескольких доменов, для нескольких бэкендов при прохождении через SSL?Как настроить SSL-пересылку с несколькими доменами с помощью HAproxy?
Пример в диаграмме для лучшего объяснения:
backend_domain_a
domain-a.com-. .-> 123.123.123.123
| |
+-> haproxy -+
| | backend_domain_b
domain-b.com-' '-> 789.789.789.789
Примечание Каждый сервер бэкенд будет issueing свой собственный сертификат. Отсюда необходимость пересылки SSL.
Я имею такую конфигурацию, но не работает по нескольким причинам (ключевым является недостающий номер порта):
frontend www
bind *:80
bind *:443
option tcplog
acl host_domain_a hdr(host) -i domain-a.com
acl host_domain_b hdr(host) -i domain-b.com
use_backend backend_domain_a if host_domain_a
use_backend backend_domain_b if host_domain_b
backend backend_domain_a
server web_a 123.123.123.123 check
backend backend_domain_b
server web_b 789.789.789.789 check
В других словах, я хочу, чтобы Haxproxy не прекратить SSL.
Первоначально я хотел сделать это с Nginx
, но, видимо, он не может выступать в качестве точки без завершающего при чтении детали хоста (хотя может быть доступна в будущих версиях с Ssl preread)