oauth2-proxy/pkg/upstream
Pascal 1d6721f7ba
fix: WebSocket proxy to respect PassHostHeader setting (#3290)
* Fix WebSocket proxy to respect PassHostHeader setting

When PassHostHeader is set to false, the regular HTTP proxy correctly
sets the Host header to the upstream backend URL. However, the WebSocket
proxy was not respecting this setting, causing WebSocket connections to
fail when backend services validate the Host header.

This commit:
- Adds passHostHeader parameter to newWebSocketReverseProxy()
- Applies setProxyUpstreamHostHeader() when PassHostHeader=false
- Ensures consistent behavior between HTTP and WebSocket proxies

Fixes #3288

Signed-off-by: Pascal Schmiel <pascal.schmiel@gmail.com>

* chore(): add tests, update changelog

Signed-off-by: Pascal Schmiel <pascal.schmiel@gmail.com>

---------

Signed-off-by: Pascal Schmiel <pascal.schmiel@gmail.com>
2026-01-16 20:30:16 +01:00
..
file.go Don't use http.StripPrefix when a file: upstream has rewriteTarget 2024-09-02 11:27:28 +01:00
file_test.go Don't use http.StripPrefix when a file: upstream has rewriteTarget 2024-09-02 11:27:28 +01:00
http.go fix: WebSocket proxy to respect PassHostHeader setting (#3290) 2026-01-16 20:30:16 +01:00
http_test.go fix: WebSocket proxy to respect PassHostHeader setting (#3290) 2026-01-16 20:30:16 +01:00
proxy.go deref everything but now with default constants 2025-11-16 22:38:56 +01:00
proxy_test.go refactor: ptr.Ptr to ptr.To 2025-11-16 22:38:59 +01:00
rewrite.go fix: websocket path rewrite (#2300) 2024-11-04 23:12:35 +01:00
rewrite_test.go fix: websocket path rewrite (#2300) 2024-11-04 23:12:35 +01:00
static.go deref everything but now with default constants 2025-11-16 22:38:56 +01:00
static_test.go chore(deps): Updated to ginkgo v2 (#2459) 2024-07-18 22:41:02 +02:00
upstream_suite_test.go fix: WebSocket proxy to respect PassHostHeader setting (#3290) 2026-01-16 20:30:16 +01:00