Windows Server · Python hosting
Dash stuck on “Loading…”
Page shows “Loading…” forever under IIS or a reverse-proxy path. Entrypoint, server = app.server, and asset prefix checklist.
What you’re seeing
The Dash UI never leaves the Loading… spinner. Network tab often shows failed /_dash-* or component-suite requests.
Why it happens
Same root cause as DashRenderer is not defined: assets and callbacks are requested from the wrong public path when Dash sits behind IIS or a folder prefix.
The fix
- Entrypoint must be
*:server(e.g.run:server), notapp:app, unlessappis already a WSGI app server = app.servermust exist in your module- Host under a platform that sets
requests_pathname_prefixfor/apps/<slug>/ - Redeploy, then hard-refresh
Avoid this class of problem
Use iVistaar to publish Dash on Windows Server with path-aware hosting instead of hand-tuning IIS + Dash prefixes.
Publish without the IIS tax
iVistaar is an internal deployment control plane for Windows Server/IIS that gives Flask, Dash, and Streamlit apps an org URL without Git or cloud services. Free demo includes 3 sites.