Que sont les ACL HAProxy ?
Dans HAProxy, les ACLs permettent d’inspecter les requêtes entrantes pour le routage, la sécurité ou les redirections.
Syntaxe de Base
acl <nom_acl> <critere> [flags] <valeur>
Cas d’Utilisation Courants
1. Routage par Domaine
frontend main_frontend
bind *:80
acl is_blog hdr(host) -i blog.exemple.com
use_backend blog_servers if is_blog
2. Routage par Chemin
frontend main_frontend
bind *:80
acl app_api path_beg /api/
use_backend api_servers if app_api
3. Blocage d’IPs
frontend main_frontend
bind *:80
acl blocked_ip src 203.0.113.50
http-request deny if blocked_ip
4. Redirection vers HTTPS
frontend http_in
bind *:80
http-request redirect scheme https code 301 if !{ ssl_fc }
5. Routage par User-Agent
frontend main_frontend
bind *:80
acl is_mobile hdr_sub(User-Agent) -i android iphone
use_backend mobile_servers if is_mobile
Résumé
- Testez toujours la syntaxe avec
haproxy -cavant de recharger.