Hello,
I have very little experience with http2, and am running haproxy HAProxy
version 2.8.4-1ppa1~jammy 2023/11/18 on Ubuntu 22.04
Running on: Linux 6.2.0-1015-aws #15~22.04.1-Ubuntu SMP Fri Oct 6 21:37:24 UTC
2023 x86_64
And have the following in one of my proxies
listen apigateway_preprod_web
bind *:8443 ssl crt /etc/ssl/private/redacted.pem crt /etc/ssl/private/
log global
mode http
use_backend apigateway_preprod_web_back if { hdr(host) -i
apigateway.internal }
default_backend no_proxy
backend apigateway_preprod_web_back
mode http
option httpchk GET /api/v1/kong-admin/status?apikey=redacted HTTP/1.1
http-check send hdr Host api-preprod.internal
http-check expect ! rstatus ^5 # only 5xx is bad
balance roundrobin
server kong01 hostname01.internal:8443 check check-ssl port 8443 ssl verify
required ca-file ca-certificates.crt fall 2 rise 2 inter 2000
server kong02 hostname02.internal:8443 check check-ssl port 8443 ssl verify
required ca-file ca-certificates.crt fall 2 rise 2 inter 2000
But my issue is that the hdr(host) part of the use_backend is not working if
the connection arrives as http2.
I tried printing the headers using
log-format "${HAPROXY_HTTP_LOG_FMT} hdrs:%{+Q}[var(txn.req_hdrs)] -- custom"
but they appear to be blank
HTTP/2.0" hdrs:"" - custom
Is there any way to make hdr(host) work in http2 or is there an equivalent?
Thank you
[cid:[email protected]]
Jason Grammenos | Operations & Infrastructure Analyst
Pronouns: he/him
P: 613.232.7797 x1131
Toll-free: 866.545.3745 x1131
[email protected]<mailto:[email protected]>
agilitypr.com<https://agilitypr.com/>
Learn new PR tips from our free resources<https://www.agilitypr.com/resources/>.