Sento che hdr_sub è migliore per le tue esigenze. Stavo usando hdr_end da un po 'ma si verifica il seguente problema:
le richieste con la porta 80 di solito ottengono la porta spogliata in modo che l'intestazione host assomigli a "esempio.com", ma se stavi richiedendo esplicitamente una porta, come esempio.com:8080, l'intestazione avrà la porta e hdr_end fallirà il controlla "esempio.com".
hdr_sub eseguirà una corrispondenza di sottostringa, che sembra una misura migliore per te (e per me).
Entrambe le soluzioni hanno ancora una brutta cosa che non mi piace. Valutazione dipendente dall'ordine dei risultati.
ad es. (le mie condizioni sembrano così sul frontend)
acl is_dbadmin hdr_sub(host) -i dbadmin.example.com
La richiesta sulla porta 8080 sarebbe così:
Jul 9 02:48:40 localhost haproxy[8]: 192.168.1.1:55870 [09/Jul/2015:02:48:40.865] http-in example/s1 1/0/0/20/110 200 330722 - - ---- 0/0/0/0/0 0/0 {**example.com:8080**||http://example.com:} {Apache/2.4.10 (Debia||||} "GET /wp-includes/js/zxcvbn.min.js HTTP/1.1"
dove probabilmente la porta 80 potrebbe essere così
Jul 9 02:48:40 localhost haproxy[8]: 192.168.1.1:55870 [09/Jul/2015:02:48:40.865] http-in example/s1 1/0/0/20/110 200 330722 - - ---- 0/0/0/0/0 0/0 {example.com||***http://example.com***:} {Apache/2.4.10 (Debia||||} "GET /wp-includes/js/zxcvbn.min.js HTTP/1.1"