Hijack failed on protocol switch

1. Caddy version (caddy version):

v2.4.6 h1:HGkGICFGvyrodcqOOclHKfvJC0qTU7vny/7FhYp9hNw=

2. How I run Caddy:

a. System environment:

Docker, see above.

b. Command:

c. Service/unit/compose file:

See above

d. My complete Caddyfile or JSON config:

3. The problem I’m having:

I am running into random websocket issues like SignalR

4. Error messages and/or full log output:

docker logs caddy 2>&1 | grep hijack

{"level":"error","ts":1649860704.838475,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}
{"level":"error","ts":1649860727.7193956,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}
{"level":"error","ts":1649860741.660313,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}
{"level":"error","ts":1649860825.063669,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}
{"level":"error","ts":1649860825.1800597,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}
{"level":"error","ts":1649860945.6200492,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}
{"level":"error","ts":1649860945.6202252,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}
{"level":"error","ts":1649861065.953286,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}
{"level":"error","ts":1649861065.9573364,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}
{"level":"error","ts":1649861186.2857592,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}
{"level":"error","ts":1649861186.297892,"logger":"http.handlers.reverse_proxy","msg":"hijack failed on protocol switch","error":"method not implemented"}

Debug logs:
https://dulanic.com/files/caddy.log

5. What I already tried:

Searched online and in forums for this error. Also looked at code on github, but couldn’t identify much besides that it seems to be websocket related? Also looked at Radarr System | WikiArr but this looks to be V1 stuff since V2 has upgrading connections integrated by default.

6. Links to relevant resources:

https://wiki.servarr.com/radarr/system#caddy

This means the response writer has been wrapped by something that is not a Hijacker (i.e. does not have a Hijack method).

Since you’re using a third-party plugin that seems to modify responses (that filter directive) I’m guessing it is the culprit. I’d recommend opening an issue on the plugin’s repository.

1 Like

This topic was automatically closed after 30 days. New replies are no longer allowed.