Commit graph

15 commits

Author SHA1 Message Date
wjqserver
d53693952a refactor: improve TLS config handling and add bridge connection tests 2026-04-02 22:13:50 +08:00
wjqserver
dcdb1504a3 feat: add robust transport cloning and improve header handling in reverse proxy 2026-04-02 19:58:34 +08:00
wjqserver
20dc6e4047 refactor: cache ResponseController in H2ReadWriteCloser for better performance 2026-04-02 19:44:02 +08:00
wjqserver
7abedc1ace enhance: improve reverse proxy error handling and add tests 2026-04-02 19:33:18 +08:00
wjqserver
50c6a23614 refactor: simplify reverse proxy bridged connection handling by removing unused bufio 2026-04-02 18:50:27 +08:00
wjqserver
a9c1662333 fix(reverseproxy): bridge websocket extended connect upstreams 2026-04-02 18:19:41 +08:00
wjqserver
919236665b feat(reverseproxy): add upstream balancing and failover 2026-04-02 14:40:56 +08:00
wjqserver
59f190ce3a fix(http2): preserve extended CONNECT tunnel shutdown semantics 2026-04-02 04:09:43 +08:00
wjqserver
2165cc4114 feat(http2): support OPTIONS * and extended CONNECT 2026-04-02 03:53:17 +08:00
wjqserver
ed44c592d3 fix(reverseproxy): align forwarding and tunnel semantics 2026-04-02 03:18:49 +08:00
wjqserver
8031e799d9 docs: explain reverse proxy query normalization
Some checks failed
Go Test / test (push) Has been cancelled
Clarify that outgoing proxy queries are normalized before forwarding, which may re-encode or drop non-standard fragments to keep parsing behavior consistent across proxy chains.
2026-03-29 01:48:50 +08:00
wjqserver
6d89b8674f 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.
2026-03-29 01:39:09 +08:00
wjqserver
1946216c0e fix: harden reverse proxy edge cases
Preserve final headers when forwarding 1xx responses, reject invalid 101 upgrade negotiations, and make the default Via token RFC-safe. Tighten the reverse proxy tests around goroutine synchronization and document the Via fallback behavior more clearly.
2026-03-29 01:15:57 +08:00
wjqserver
e4ca20e848 docs: clarify reverse proxy compatibility behavior
Document BufferPool usage and explain why trailer fallback and disconnect compatibility logic intentionally mirror the standard library reverse proxy. Add a regression test covering unannounced trailer forwarding so that proxy trailer behavior stays aligned with Go's semantics.
2026-03-29 00:51:06 +08:00
wjqserver
764a764720 feat: add built-in reverse proxy support
Provide an RFC-aware reverse proxy handler so Touka services can forward normal, streaming, and upgraded HTTP traffic without leaving the framework. Document the new API and proxy-chain behavior so deployments behind other gateways preserve forwarding metadata correctly.
2026-03-29 00:33:56 +08:00