Я использую HAProxy для балансировки нагрузки. Я хочу отклонить все запросы API, в которых изменяется значение хоста. например, если URL-адрес API равен «www.example.com/api/getUserDetail», если значением HOST заголовка запроса является example.com, то будет обслуживаться только этот API, в противном случае его следует отправить на «www.example.com/404/».
global
log 127.0.0.1 local0 notice
maxconn 2000
user haproxy
group haproxy
defaults
log global
mode http
option httplog
option dontlognull
option forwardfor
option http-server-close
retries 3
option redispatch
timeout connect 5000
timeout client 10000
timeout server 10000
frontend ELB
bind *:80
mode http
http-response set-header Strict-Transport-Security "max-age=16000000; includeSubDomains; preload;"
stats uri /haproxy?stats
stats auth hapuser:hapuser
acl apicall path_beg -i /api/
use_backend apigateway if apicall
acl explorercall path_beg -i /explorer/
use_backend apigateway if explorercall
default_backend weburl
backend weburl
mode http
balance leastconn
compression algo gzip
compression type text/css text/html text/javascript application/javascript text/plain text/xml application/json image/svg+xml
http-response set-header Strict-Transport-Security "max-age=16000000; includeSubDomains; preload;"
server weburl1 127.0.0.1:3000 check port 80 inter 10s rise 2 fall 2
backend apigateway
mode http
balance leastconn
compression algo gzip
compression type text/css text/html text/javascript application/javascript text/plain text/xml application/json image/svg+xml
http-response set-header Strict-Transport-Security "max-age=16000000; includeSubDomains; preload;"
server apigateway1 127.0.0.1:6001 check port 80 inter 10s rise 2 fall 2