Hallo HAProxy community,
I have a problem with chrome's pre-connect feature in conjunction with
haproxy's "choose-backend-by-acl" feature. I really hope sombody can
help me.
Here a simplified version of my config:

frontend https
    bind *:443 name *:443 ssl crt /path/to/cert.pem
    mode tcp

    acl acl_58a704192fda06.42911106 hdr_end(host) -i .example.net
    use_backend _.example.net if acl_58a704192fda06.42911106

    acl acl_58ad6d70f2d8f9.76023768 hdr(host) -i example.net
    use_backend example.net if acl_58ad6d70f2d8f9.76023768
   
backend _.example.net
    mode http
    server _.example.net 1.2.3.4:443 ssl verify none

backend example.net
    mode http
    server example.net 5.6.7.8:443 ssl verify none

The problem is that in Chrome random files are not being received. I
think it has to do with Chromes pre-connect "feature". Chrome opens a
HTTP-connection without sending anything, even no http header. HAProxy
tries to assign the request to a backend using the not available host
header, so it fails.
Does somebody know how to deal with this problem? Can I say HAProxy to
wait for data before trying to assign the request to a backend?

Thank you for your help!

Regards,
Simon

Reply via email to