Planned proxy maintenance is safer when the reverse proxy can reload or restart independently from the authentication and session-state services behind it.
A proxy process usually does not need to own the login state it forwards. Before maintenance, map which component signs cookies, stores server-side sessions, terminates authentication, and drains active HTTP connections. Keep those stateful components running, prefer graceful proxy reloads when only configuration changes, and verify that a full proxy replacement reconnects to the same auth gateway and session store with unchanged secrets.
Separate Proxy Lifecycle From Auth-Service Lifecycle
Check your Compose dependencies, restart policies, shared scripts, and stack-manager actions to ensure restarting the proxy does not automatically recreate the authentication gateway, application, Redis, or database.
A session architecture example uses Redis outside the proxy lifecycle so multiple auth instances and restarts can share the same session backend.
Do not group every edge service under one blunt restart command. If a certificate or route change only affects the proxy, leave the services that validate existing login state untouched.
Reload Configuration Instead of Restarting When Possible
For route, certificate, or header changes, use the proxy’s supported graceful reload path instead of stopping the service. Validate configuration before applying it so a syntax error does not turn planned maintenance into downtime.
API7’s NGINX walkthrough explains how old workers drain connections while new workers accept requests under the updated configuration.
A reload preserves the proxy process family, but it does not protect a separate auth service if your deployment script restarts that service too. Keep those two lifecycle questions independent.
Preserve External Session Storage Across Proxy Replacement
If an auth gateway stores session data outside cookies, keep its Redis or other session backend persistent and unchanged through the proxy operation. Record the backend address and secret used by every auth instance.
OAuth2 Proxy supports Redis as shared session storage when sessions must be shared between instances.
Do not confuse a disposable cache with authoritative login state. If the session backend is required to validate current users, restart or flush it only under its own tested maintenance procedure.
Keep Cookie and Signing Secrets Stable
Record the cookie encryption or signing secret used by the auth gateway and ensure the replacement proxy stack mounts the same secret source. Generating a new value during redeploy will invalidate otherwise healthy browser cookies.
A reverse-proxy session guide notes that stable session policy survives restarts rather than on the lifetime of one TCP connection.
Rotate signing secrets as a separate security change with an explicit logout expectation or overlap strategy. Do not combine secret rotation with an ordinary planned proxy reload unless session invalidation is intentional.
Drain Connections During a Full Proxy Restart
When the proxy binary or container must be replaced, use its graceful or hitless restart mechanism where available so established requests are not cut off mid-response. Keep a maintenance timeout for long-lived connections.
HAProxy’s reload guidance shows how hitless reloads preserve connections rather than killing the old process immediately.
Connection continuity and login continuity are different. Even if a WebSocket reconnects, the session should remain valid because the replacement proxy reaches the same auth and state services.
Test One Session Before and After Planned Maintenance
Use one logged-in browser and one fresh private session. Record the session cookie, proxy route, auth service, and backend before maintenance, then reload or replace only the proxy and repeat the same protected request.
A Caddy operations guide recommends reload instead of full restart for planned configuration updates.
The maintenance design is working when existing logins survive, new logins still succeed, and no stateful dependency received an unintended restart. The related ZimaSpace article on session loss after proxy restart remains the correct recovery branch if users are still logged out.
Frequently Asked Questions
Does a graceful proxy reload guarantee users stay logged in?
No. It protects proxy connections, but users can still be logged out if the auth service, session store, or cookie-signing secret changes at the same time.
Should Redis always survive a proxy restart?
Only when Redis stores session state or another persistent dependency for authentication. A cache-only Redis instance has a different recovery boundary.
Is keeping the same cookie name enough?
No. The signing or encryption secret and the backend session state must also remain compatible with the cookie the browser already holds.
Support & Tips
More to Read

Live TV Recording Storage Guide for Capacity, Retention, and Cleanup
Measure real recordings, reserve headroom, combine age and capacity limits, and prove the oldest eligible program is removed before storage fills.

Home Media Metadata Recovery Workflow After a Database Restore
Protect the restored state, verify media identity and paths, then repair missing artwork or matches in a pilot library before broad metadata changes.

Jellyfin Client Compatibility Checklist for Audio, Video, and Subtitles
Test representative files one variable at a time and record Direct Play, remux, audio conversion, video transcode, or failure for every client.

