fix: tighten reverse proxy safety handling

Avoid HTTP error writes after hijacking upgraded connections, document ModifyResponse constraints for 101 responses, and normalize forwarded query strings consistently to reduce parsing ambiguity across proxy chains.
This commit is contained in:
wjqserver 2026-03-29 01:39:09 +08:00
parent 1946216c0e
commit 6d89b8674f
3 changed files with 13 additions and 5 deletions

View file

@ -74,7 +74,7 @@ func TestReverseProxyForwardingAndHopHeaders(t *testing.T) {
Via: "proxy.test",
}))
req := httptest.NewRequest(http.MethodGet, "http://client.example/api/ping?q=2", nil)
req := httptest.NewRequest(http.MethodGet, "http://client.example/api/ping?bad=1;smuggle=2&q=2", nil)
req.Host = "client.example"
req.RemoteAddr = "198.51.100.10:4567"
req.Header.Set("Connection", "X-Remove-Me")