A reverse proxy can send one app to another app’s domain when the backend or middleware builds redirects from the wrong public hostname.
In a ZimaSpace self-hosted stack, several apps may share the same proxy while each expects its own public base URL. If Host, X-Forwarded-Host, scheme, middleware, or an app-level canonical URL points at another service, the first page may load correctly and the next 301, 302, or login callback can jump domains.
Check the Host and Scheme Sent to the Backend
Capture request headers at the proxy and backend while reproducing the redirect.
A focused reverse-proxy implementation guide on forwarded host and scheme reach the backend helps isolate this branch because it addresses the same micro-problem instead of only defining the underlying protocol.
Correct the proxy headers before changing application URLs. A backend cannot build the right absolute redirect when it believes the request used another host.
Inspect X-Forwarded-Host Specifically
Some frameworks use X-Forwarded-Host instead of the raw Host header when generating absolute URLs.
A focused focused http-header explainer on X-Forwarded-Host preserves the public hostname helps isolate this branch because it addresses the same micro-problem instead of only defining the underlying protocol.
Compare this header across the working app and the misdirected app. Remove global overrides that force every backend to one domain.
Check Whether the App Generates Absolute URLs
Look for framework settings that trust proxy headers and construct canonical links or redirects.
A focused real-world proxy debugging blog on absolute URLs can be wrong behind a proxy helps isolate this branch because it addresses the same micro-problem instead of only defining the underlying protocol.
Fix the framework proxy trust or public URL setting rather than rewriting every redirect at the edge.
Verify the App Base URL or Canonical Domain
Many self-hosted apps store a site URL independently of the proxy rule.
A focused practical app-behind-proxy case study on the application base URL can override the proxy hostname helps isolate this branch because it addresses the same micro-problem instead of only defining the underlying protocol.
Compare stored application URL values after migrations or restores. One copied database can carry another app environment’s canonical hostname.
Audit Redirect Middleware Before the Backend
A proxy rule can intentionally rewrite scheme or host before the request ever reaches the application.
A focused homelab traefik how-to on redirect middleware can replace the host helps isolate this branch because it addresses the same micro-problem instead of only defining the underlying protocol.
Disable only the suspect redirect middleware for one test router. Keep HTTPS enforcement separate from cross-domain redirects.
Check OAuth and OIDC Callback URLs
Authentication flows often expose a wrong public hostname because the provider validates an exact redirect URI.
A focused focused oidc troubleshooting article on OIDC callbacks depend on the public proxy URL helps isolate this branch because it addresses the same micro-problem instead of only defining the underlying protocol.
Compare issuer, callback, forwarded headers, and app base URL together. A normal page load does not prove the login callback path is correct.
Re-Test the Exact Home-Server Path
After changing one variable, repeat the same NAS or self-hosted workflow from the same client instead of switching to a different test that may use another path.
The related ZimaSpace guide on the adjacent home-server network path helps keep the final verification tied to the same self-hosted environment.
The fix is complete only when the original symptom stays resolved after reconnect, service restart, and a second controlled transfer or request.
Frequently Asked Questions
Can DNS cause an HTTP 301 or 302?
DNS only returns an address. The redirect is generated by the proxy, authentication layer, or application.
Why does the correct app load before the browser changes domains?
The initial proxy route can be correct while the backend generates a later absolute redirect from a wrong base URL or forwarded host.
Should I rewrite every Location header at the proxy?
No. Fix the incorrect hostname source first; broad response rewriting can hide application configuration errors.
Support & Tips
More to Read

Can Plex Share a GPU With Another Docker Container?
Plex and another container can often access the same GPU, but you must test driver support, device mapping, video-engine load, memory, and recovery behavior.

How to Tell Whether a Plex Error Comes From the Client or Server
Reproduce the same item on another client, compare the session path, then collect server evidence only after scope tells you where the failure actually...

How to Configure Plex Cache and Transcode Temporary Storage
Protect persistent Plex state while placing transcode temp files on suitable local storage, then verify cleanup, free space, and restart behavior.

