{"level":"info","ts":1700661150.1654668,"msg":"using provided configuration","config_file":"/app/Caddyfile","config_adapter":""}
{"level":"info","ts":1700661150.167787,"logger":"admin","msg":"admin endpoint started","address":"localhost:2019","enforce_origin":false,"origins":["//localhost:2019","//[::1]:2019","//127.0.0.1:2019"]}
{"level":"info","ts":1700661150.1681533,"logger":"http.auto_https","msg":"enabling automatic HTTP->HTTPS redirects","server_name":"srv1"}
{"level":"info","ts":1700661150.1684246,"logger":"tls.cache.maintenance","msg":"started background certificate maintenance","cache":"0xc0000be480"}
{"level":"info","ts":1700661150.1709878,"logger":"tls","msg":"cleaning storage unit","description":"FileStorage:/root/.local/share/caddy"}
{"level":"info","ts":1700661150.171027,"logger":"tls","msg":"finished cleaning storage units"}
{"level":"warn","ts":1700661150.2109861,"logger":"pki.ca.local","msg":"installing root certificate (you might be prompted for password)","path":"storage:pki/authorities/local/root.crt"}
{"level":"info","ts":1700661150.2112274,"msg":"warning: \"certutil\" is not available, install \"certutil\" with \"apt install libnss3-tools\" or \"yum install nss-tools\" and try again"}
{"level":"info","ts":1700661150.2112474,"msg":"define JAVA_HOME environment variable to use the Java trust"}
{"level":"info","ts":1700661150.82516,"msg":"certificate installed properly in linux trusts"}
{"level":"info","ts":1700661150.8253286,"logger":"http.log","msg":"server running","name":"srv0","protocols":["h1","h2","h3"]}
{"level":"info","ts":1700661150.8253639,"logger":"http","msg":"enabling HTTP/3 listener","addr":":3032"}
{"level":"info","ts":1700661150.8254488,"msg":"failed to sufficiently increase receive buffer size (was: 208 kiB, wanted: 2048 kiB, got: 416 kiB). See https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes for details."}
{"level":"info","ts":1700661150.825575,"logger":"http.log","msg":"server running","name":"srv1","protocols":["h1","h2","h3"]}
{"level":"info","ts":1700661150.8256192,"logger":"http.log","msg":"server running","name":"remaining_auto_https_redirects","protocols":["h1","h2","h3"]}
{"level":"info","ts":1700661150.825623,"logger":"http","msg":"enabling automatic TLS certificate management","domains":["caddy.local"]}
{"level":"info","ts":1700661150.8263054,"msg":"autosaved config (load with --resume flag)","file":"/root/.config/caddy/autosave.json"}
{"level":"info","ts":1700661150.8263266,"msg":"serving initial configuration"}
{"level":"info","ts":1700661150.8263714,"logger":"tls.obtain","msg":"acquiring lock","identifier":"caddy.local"}
{"level":"info","ts":1700661150.8305962,"logger":"tls.obtain","msg":"lock acquired","identifier":"caddy.local"}
{"level":"info","ts":1700661150.83065,"logger":"tls.obtain","msg":"obtaining certificate","identifier":"caddy.local"}
{"level":"info","ts":1700661150.831319,"logger":"tls.obtain","msg":"certificate obtained successfully","identifier":"caddy.local"}
{"level":"info","ts":1700661150.8313768,"logger":"tls.obtain","msg":"releasing lock","identifier":"caddy.local"}
{"level":"warn","ts":1700661150.8315408,"logger":"tls","msg":"stapling OCSP","error":"no OCSP stapling for [caddy.local]: no OCSP server specified in certificate","identifiers":["caddy.local"]}
{"level":"error","ts":1700661178.9943218,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 1; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661178.9944057,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.011107287,"request":{"remote_ip":"172.30.208.1","remote_port":"55627","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"],"X-Forwarded-For":["172.30.208.1"],"Upgrade-Insecure-Requests":["1"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"],"Accept":["text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"],"Accept-Encoding":["gzip, deflate"],"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"]}},"error":"reading: stream error: stream ID 1; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661180.5778701,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 3; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661180.5779188,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.000736206,"request":{"remote_ip":"172.30.208.1","remote_port":"55629","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-For":["172.30.208.1"],"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"],"Accept-Encoding":["identity"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"]}},"error":"reading: stream error: stream ID 3; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661182.0577562,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 5; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661182.057803,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.000789073,"request":{"remote_ip":"172.30.208.1","remote_port":"55631","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-For":["172.30.208.1"],"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"],"Accept-Encoding":["identity"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"]}},"error":"reading: stream error: stream ID 5; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661183.5539536,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 7; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661183.5540245,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.000794437,"request":{"remote_ip":"172.30.208.1","remote_port":"55632","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"],"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"],"X-Forwarded-For":["172.30.208.1"],"Accept-Encoding":["identity"]}},"error":"reading: stream error: stream ID 7; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661185.0666723,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 9; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661185.0667233,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.000760583,"request":{"remote_ip":"172.30.208.1","remote_port":"55634","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"X-Forwarded-For":["172.30.208.1"],"Accept-Encoding":["identity"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"],"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"]}},"error":"reading: stream error: stream ID 9; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661186.574021,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 11; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661186.5740678,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.000777046,"request":{"remote_ip":"172.30.208.1","remote_port":"55636","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"Accept-Encoding":["identity"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"],"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"],"X-Forwarded-For":["172.30.208.1"]}},"error":"reading: stream error: stream ID 11; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661200.4140444,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 1; INTERNAL_ERROR; received from peer"}
{"level":"error","ts":1700661200.4140916,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.011703325,"request":{"remote_ip":"172.30.208.1","remote_port":"55649","client_ip":"172.30.208.1","proto":"HTTP/2.0","method":"GET","host":"caddy.local:3032","uri":"/","headers":{"X-Forwarded-Proto":["https"],"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-For":["172.30.208.1"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"],"Accept":["text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"],"Sec-Ch-Ua-Mobile":["?0"],"Sec-Ch-Ua-Platform":["\"Windows\""],"Sec-Fetch-User":["?1"],"Sec-Ch-Ua":["\"Google Chrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\""],"Cache-Control":["max-age=0"],"Sec-Fetch-Site":["none"],"Sec-Fetch-Mode":["navigate"],"Sec-Fetch-Dest":["document"],"X-Forwarded-Host":["caddy.local:3032"],"Accept-Encoding":["gzip, deflate, br"],"Upgrade-Insecure-Requests":["1"]},"tls":{"resumed":false,"version":772,"cipher_suite":4865,"proto":"h2","server_name":"caddy.local"}},"error":"reading: stream error: stream ID 1; INTERNAL_ERROR; received from peer"}
I have a download that is cancelled halfway through by the server while streaming a file, however the browser thinks that the file was downloaded successfully, but it only downloaded a part of it.
I've narrowed the issue down (with the help of the discord), to be http/2 related.
I've created a reproduction repository that showcases the issue: https://github.com/MidasLamb/caddy-download-abortion.
There are three ports accessible, port 3030, 3031, and 3032.
Port 3030 will use tls and http/2 directly to the application
Port 3031 will use http/1.1 to caddy that proxies the application
Port 3032 will use http/2 to caddy that proxies the application
It results in the following behaviour in the browser:

where you can see that for port 3030 and 3031, the abort is shown correctly to the user, while on port 3032, it is deemed a successful download.
Logs
{"level":"info","ts":1700661150.1654668,"msg":"using provided configuration","config_file":"/app/Caddyfile","config_adapter":""} {"level":"info","ts":1700661150.167787,"logger":"admin","msg":"admin endpoint started","address":"localhost:2019","enforce_origin":false,"origins":["//localhost:2019","//[::1]:2019","//127.0.0.1:2019"]} {"level":"info","ts":1700661150.1681533,"logger":"http.auto_https","msg":"enabling automatic HTTP->HTTPS redirects","server_name":"srv1"} {"level":"info","ts":1700661150.1684246,"logger":"tls.cache.maintenance","msg":"started background certificate maintenance","cache":"0xc0000be480"} {"level":"info","ts":1700661150.1709878,"logger":"tls","msg":"cleaning storage unit","description":"FileStorage:/root/.local/share/caddy"} {"level":"info","ts":1700661150.171027,"logger":"tls","msg":"finished cleaning storage units"} {"level":"warn","ts":1700661150.2109861,"logger":"pki.ca.local","msg":"installing root certificate (you might be prompted for password)","path":"storage:pki/authorities/local/root.crt"} {"level":"info","ts":1700661150.2112274,"msg":"warning: \"certutil\" is not available, install \"certutil\" with \"apt install libnss3-tools\" or \"yum install nss-tools\" and try again"} {"level":"info","ts":1700661150.2112474,"msg":"define JAVA_HOME environment variable to use the Java trust"} {"level":"info","ts":1700661150.82516,"msg":"certificate installed properly in linux trusts"} {"level":"info","ts":1700661150.8253286,"logger":"http.log","msg":"server running","name":"srv0","protocols":["h1","h2","h3"]} {"level":"info","ts":1700661150.8253639,"logger":"http","msg":"enabling HTTP/3 listener","addr":":3032"} {"level":"info","ts":1700661150.8254488,"msg":"failed to sufficiently increase receive buffer size (was: 208 kiB, wanted: 2048 kiB, got: 416 kiB). See https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes for details."} {"level":"info","ts":1700661150.825575,"logger":"http.log","msg":"server running","name":"srv1","protocols":["h1","h2","h3"]} {"level":"info","ts":1700661150.8256192,"logger":"http.log","msg":"server running","name":"remaining_auto_https_redirects","protocols":["h1","h2","h3"]} {"level":"info","ts":1700661150.825623,"logger":"http","msg":"enabling automatic TLS certificate management","domains":["caddy.local"]} {"level":"info","ts":1700661150.8263054,"msg":"autosaved config (load with --resume flag)","file":"/root/.config/caddy/autosave.json"} {"level":"info","ts":1700661150.8263266,"msg":"serving initial configuration"} {"level":"info","ts":1700661150.8263714,"logger":"tls.obtain","msg":"acquiring lock","identifier":"caddy.local"} {"level":"info","ts":1700661150.8305962,"logger":"tls.obtain","msg":"lock acquired","identifier":"caddy.local"} {"level":"info","ts":1700661150.83065,"logger":"tls.obtain","msg":"obtaining certificate","identifier":"caddy.local"} {"level":"info","ts":1700661150.831319,"logger":"tls.obtain","msg":"certificate obtained successfully","identifier":"caddy.local"} {"level":"info","ts":1700661150.8313768,"logger":"tls.obtain","msg":"releasing lock","identifier":"caddy.local"} {"level":"warn","ts":1700661150.8315408,"logger":"tls","msg":"stapling OCSP","error":"no OCSP stapling for [caddy.local]: no OCSP server specified in certificate","identifiers":["caddy.local"]} {"level":"error","ts":1700661178.9943218,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 1; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661178.9944057,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.011107287,"request":{"remote_ip":"172.30.208.1","remote_port":"55627","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"],"X-Forwarded-For":["172.30.208.1"],"Upgrade-Insecure-Requests":["1"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"],"Accept":["text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"],"Accept-Encoding":["gzip, deflate"],"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"]}},"error":"reading: stream error: stream ID 1; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661180.5778701,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 3; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661180.5779188,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.000736206,"request":{"remote_ip":"172.30.208.1","remote_port":"55629","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-For":["172.30.208.1"],"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"],"Accept-Encoding":["identity"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"]}},"error":"reading: stream error: stream ID 3; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661182.0577562,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 5; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661182.057803,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.000789073,"request":{"remote_ip":"172.30.208.1","remote_port":"55631","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-For":["172.30.208.1"],"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"],"Accept-Encoding":["identity"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"]}},"error":"reading: stream error: stream ID 5; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661183.5539536,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 7; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661183.5540245,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.000794437,"request":{"remote_ip":"172.30.208.1","remote_port":"55632","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"],"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"],"X-Forwarded-For":["172.30.208.1"],"Accept-Encoding":["identity"]}},"error":"reading: stream error: stream ID 7; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661185.0666723,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 9; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661185.0667233,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.000760583,"request":{"remote_ip":"172.30.208.1","remote_port":"55634","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"X-Forwarded-For":["172.30.208.1"],"Accept-Encoding":["identity"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"],"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"]}},"error":"reading: stream error: stream ID 9; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661186.574021,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 11; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661186.5740678,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.000777046,"request":{"remote_ip":"172.30.208.1","remote_port":"55636","client_ip":"172.30.208.1","proto":"HTTP/1.1","method":"GET","host":"caddy.local:3031","uri":"/","headers":{"Accept-Encoding":["identity"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"],"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-Proto":["http"],"X-Forwarded-Host":["caddy.local:3031"],"X-Forwarded-For":["172.30.208.1"]}},"error":"reading: stream error: stream ID 11; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661200.4140444,"logger":"http.handlers.reverse_proxy","msg":"reading from backend","error":"stream error: stream ID 1; INTERNAL_ERROR; received from peer"} {"level":"error","ts":1700661200.4140916,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"localhost:3030","duration":0.011703325,"request":{"remote_ip":"172.30.208.1","remote_port":"55649","client_ip":"172.30.208.1","proto":"HTTP/2.0","method":"GET","host":"caddy.local:3032","uri":"/","headers":{"X-Forwarded-Proto":["https"],"Accept-Language":["nl-NL,nl;q=0.9,en-US;q=0.8,en;q=0.7"],"X-Forwarded-For":["172.30.208.1"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"],"Accept":["text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"],"Sec-Ch-Ua-Mobile":["?0"],"Sec-Ch-Ua-Platform":["\"Windows\""],"Sec-Fetch-User":["?1"],"Sec-Ch-Ua":["\"Google Chrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\""],"Cache-Control":["max-age=0"],"Sec-Fetch-Site":["none"],"Sec-Fetch-Mode":["navigate"],"Sec-Fetch-Dest":["document"],"X-Forwarded-Host":["caddy.local:3032"],"Accept-Encoding":["gzip, deflate, br"],"Upgrade-Insecure-Requests":["1"]},"tls":{"resumed":false,"version":772,"cipher_suite":4865,"proto":"h2","server_name":"caddy.local"}},"error":"reading: stream error: stream ID 1; INTERNAL_ERROR; received from peer"}