diff --git a/pkg/server/service/proxy.go b/pkg/server/service/proxy.go index d6fdfcb8e..e27afc60c 100644 --- a/pkg/server/service/proxy.go +++ b/pkg/server/service/proxy.go @@ -62,10 +62,12 @@ func buildProxy(passHostHeader *bool, responseForwarding *dynamic.ResponseForwar } // Even if the websocket RFC says that headers should be case-insensitive, - // some servers need Sec-WebSocket-Key to be case-sensitive. + // some servers need Sec-WebSocket-Key and Sec-WebSocket-Protocol to be case-sensitive. // https://tools.ietf.org/html/rfc6455#page-20 outReq.Header["Sec-WebSocket-Key"] = outReq.Header["Sec-Websocket-Key"] + outReq.Header["Sec-WebSocket-Protocol"] = outReq.Header["Sec-Websocket-Protocol"] delete(outReq.Header, "Sec-Websocket-Key") + delete(outReq.Header, "Sec-Websocket-Protocol") }, Transport: defaultRoundTripper, FlushInterval: time.Duration(flushInterval),