1. The problem I’m having:
I’m using Caddy as a reverse proxy in front of an Odoo instance, and have been doing so for years with great results.
However, since about 10 days ago, WebSocket / real-time functionality has stopped working reliably. This affects Chrome-based browsers (starting with version 138 and still broken in 139+ beta/dev), while Firefox continues to work fine.
There are no visible client, server, or reverse proxy errors — but the real-time updates stop flowing silently.
The same issue does not occur if I switch the reverse proxy from Caddy to Nginx — which leads me to think the problem lies somewhere in how Caddy and recent versions of Chrome handle WebSockets.
To confirm it’s not the app itself, I tested older Odoo snapshots (several months old, previously working fine), and the issue persists only when served through Caddy + Chrome 138+.
I’ve tried several reverse_proxy configurations without success (timeouts, http transport, etc).
I’m trying to understand:
- How I could debug this further?
- If there are any relevant Caddy options I should try?
Any help would be appreciated.
2. Error messages and/or full log output:
There are, I think, no relevant error in logs (even in debug mode), and the issue does not generate any console error in the browser.
The WebSocket connection appears to establish but doesn’t receive any events.
3. Caddy version:
Tested on:
- Latest v2.8.0
- Latest v2.10.0
- Current master (built locally with xcaddy)
4. How I installed and ran Caddy:
System environment:
Official docker image, custom docker image
My Caddy config:
odoo.example.com {
reverse_proxy 127.0.0.1:8069
reverse_proxy /websocket 127.0.0.1:8072
encode zstd gzip
}
(Also tested with and without header_up
directives — same issue, whereas it has always worked as showed withtout special configuration).
Thanks again for your time.