단일 서버에서 실행되는 여러 응용 프로그램의 경로를 지정하기 위해 haproxy를 사용하고 있습니다. 사용중인 도메인 중 하나에 대해 수십 개의 하위 도메인이 있으며 몇 개의 응용 프로그램 중 하나에 연결되어야합니다.
현재 모든 하위 도메인을 separte 줄에 나열합니다. 내 프론트 엔드 구성은 다음과 같습니다.
frontend http-in
bind *:80
acl alpha hdr(host) -i alpha.com
acl beta hdr(host) -i beta.com
acl gamma00 hdr(host) -i apple.gamma.com
acl gamma01 hdr(host) -i banana.gamma.com
acl gamma02 hdr(host) -i cherry.gamma.com
acl gamma03 hdr(host) -i durian.gamma.com
acl gamma04 hdr(host) -i elderberry.gamma.com
acl gamma05 hdr(host) -i fig.gamma.com
acl gamma06 hdr(host) -i grapefruit.gamma.com
acl gamma hdr(host) -i gamma.com
use_backend a if alpha
use_backend b if beta
use_backend sub1 if gamma00
use_backend sub1 if gamma01
use_backend sub1 if gamma02
use_backend sub2 if gamma03
use_backend sub2 if gamma04
use_backend sub2 if gamma05
use_backend sub2 if gamma06
use_backend g if gamma
default_backend default
더 간결한 형태로 유사한 결과를 얻는 방법이 있습니까? 그러한 목록이 효과적입니까, 아니면 어느 시점에서 정규식으로 전환하는 것이 더 좋습니까?
regex
실제로 귀하의 답변입니다. 또한 하위 도메인 만 열거 할 수 있도록hdr_beg
대신 사용할 수 있습니다hdr
. 마지막으로, 당신의 붕괴 할 수 있어야gamma00-06
두 ACL을, 하나에 ACL을sub1
하고 하나sub2
단순히 같은를 사용하여,acl <title>
ACL에 라인.