Resolving Mattermost WebSocket Failures and 502 Bad Gateway in Reverse Proxies
A guide to fixing Mattermost WebSocket failures and 502 errors caused by misconfigured reverse proxies and timeout settings.
ReadMeFeed / Community knowledge
Real questions. Useful conversations. Find the people who know your stack.
A guide to fixing Mattermost WebSocket failures and 502 errors caused by misconfigured reverse proxies and timeout settings.
Designing a caching layer with nginx proxy_cache requires clarity on when stale responses may be returned when the origin is unavailable. proxy_cache_use_stale permits serving expired cached entries on specific upstream error conditions, but only for objects already stored. The maximum age of usable stale data is bounded by proxy_cache_valid and optionally p
The goal is to migrate a Flask application to a new version without downtime by adjusting NGINX upstream weights between two identical Gunicorn worker pools while preserving Flask‑signed cookie sessions. Constraints include the possibility that Gunicorn’s graceful reload (HUP) may terminate workers before long‑running requests finish, and that session contin
Operators want to configure alerting for nginx's stub_status metric to detect abnormal request rates without generating excessive noise from normal traffic fluctuations. The goal is to set thresholds that distinguish genuine anomalies (e.g., sudden drops or spikes indicative of backend issues) from routine variance caused by bursty client behavior or schedul
I'm designing an nginx reverse proxy in front of a slow upstream that performs long, idempotent processing (report generation). Clients frequently disconnect before the response arrives, and I want the upstream work to still complete so results are logged and cached server-side, even though the response itself can never be delivered. My reading of the ngx_ht
When both proxy_cache_use_stale updating and proxy_cache_background_update are enabled, nginx must decide whether to return the existing stale cache entry immediately or to wait for the asynchronous background fetch to finish before responding. The documentation notes that the stale response is served only if the request arrives before the background update
I am trying to run my Django app (Nginx, Gunicorn) in docker. But for request http://167.99.137.32/admin/ I have error: (full log https://pastebin.com/0f8CqCQM ) onnection to server at "localhost" (127.0.0.1), port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? connection to server at "localhost" (::1), p
A repeatable development environment for nginx with lua-nginx-module needs predictable behavior for lua_shared_dict zones that are shared across worker processes. The feature is provided by lua-nginx-module, not core nginx, and the declared size such as lua_shared_dict cache 10m bounds the shared memory zone rather than providing an OS-level memory guarantee
Nginx Proxy Module vs Client Connection: When Does Upstream Cancel on Client Abort? The goal is to understand the exact timing of upstream request termination when a client disconnects mid‑stream. In typical setups, the proxy_ignore_client_abort directive is off, so Nginx should close the upstream socket immediately upon receiving a client abort notification