Wrong protocol negotiation ussing http2

Hi there, weŕe exeperiencing some issues trying to rollout h2 feature for our users. Every time we’re trying to roll out the new configuration we’ve noticed that connections errors increase, always because of the same issue, Remote server closed the connection before sending response header. Request never is forwarded to the backend severs.

It happens just for few requests, but adding a proxy in the middle for checking what’s going on with the request we’ve noticed the following: browser starts negotiating with haproxy about which protocol to use using ALPN, server chooses h2, however, request is made using http1.

image

Only thing that comes to our mind that can be affecting is we’re using multidomain certificates. However, all domains describred in the certificates are members of the same cluster behind haproxy, applying the same configuration for all of them, in this case h2.

We’re using currently the following versions of haproxy and openssl:

  • haproxy 2.6.6
  • openssl 3.0.7, statically compiled.

Any idea of what can be going on or hint for debugging the issue?