Hi, All
Can anyone help me about haproxy use_backend doesn't work if dst port is 8080, protocol is POST when using 'if HTTP'. The problem is that I want to balance my gateway http traffic to one program (which can proxy traffic, listen on 127.0.0.1:4800). And I write my haproxy.cfg as follow: ######################################## frontend f_tcp bind :5900 mode tcp maxconn 4096 tcp-request inspect-delay 3s tcp-request content accept if HTTP use_backend b_http if HTTP default_backend b_tcp backend b_tcp mode tcp fullconn 4096 option transparent backend b_http mode http log global option accept-invalid-http-response fullconn 4096 server s1 127.0.0.1:4800 ###################################### when the packet came to haproxy with dst port 80, all the packet are forward to 127.0.0.1:4800, including method POST with dst port 80. But when a packet is method POST with dst port 8080, it does not forward to 127.0.0.1:4800, does any one know why? Later on, I decide to use acl for packet dst port matching, an change of frontend is as follow, with backend not modify: ######################################## frontend f_tcp bind :5800 mode tcp maxconn 4096 acl is_port_80 dst_port 80 acl is_port_8080 dst_port 8080 use_backend b_http if is_port_80 is_port_8080 default_backend b_tcp backend b_tcp ..... ######################################## But it won't work completely, even the packet with dst port 80 are not send to 127.0.0.1:4800. Can any one help me? Thanks in advance