SSLを処理するstunnelでhaproxyを使用しています(そして、プロキシモードを使用してhaproxyからの元のIPを保持しています)。
ドメイン、ヘッダー、またはパスに応じて異なるバックエンドにリダイレクトするいくつかのaclテストがあります。
問題は、http経由でアクセスする場合でもhttps経由でアクセスする場合でも、これらは同じですが、構成で複製する必要があることです。重複を減らす方法はありますか?
設定例は次のとおりです。
global
user haproxy
group haproxy
#etc...
frontend http-in
bind *:80
acl files_path path_beg /files/
acl beta_host hdr_beg(host) -i beta.
use_backend files if files_path
use backend beta_host
default_backend appservers
frontend https-in
bind *:442 accept-proxy
acl files_path path_beg /files/
acl beta_host hdr_beg(host) -i beta.
use_backend files if files_path
use backend beta_host
default_backend appservers
backend appservers
balance roundrobin
option forwardfor
server appserver_1 localhost:8080 weight 1
server appserver_2 192.168.1.101:8080 weight 1
backend files
balance roundrobin
option forwardfor
server file1 192.168.1.102 weight 1
server file2 192.168.1.103 weight 1
backend beta
balance roundrobin
server beta1 192.168.1.104 weight 1
http-inとhttps-inのポートは異なり、stunnelがプロキシプロトコルを使用してユーザーの元のIPを渡すことができるように、https-inはaccept-proxyをsepcifyする必要があります。ただし、それ以外は同一であり、常に同一である必要があります。この重複を減らす方法はありますか?(haproxy 1.5-dev)