Windows Server · Python hosting

IIS HttpPlatformHandler returns HTTP 500 with empty logs

Empty stdout_*.log, Event Viewer noise, and a dead app pool — usually AppData Python under HttpPlatformHandler. Prefer Waitress service mode.

What you’re seeing

The IIS site (or app) returns HTTP 500. stdout_*.log is empty or never created. Event Viewer may show HttpPlatformHandler failing to start the process — especially when python.exe lives under a user AppData folder.

Why it happens

HttpPlatformHandler launches Python as the app-pool identity. Per-user Python installs, locked profiles, and missing execute ACLs mean the handler dies before your app writes a log line. This is one of the most common “Python on IIS” dead ends on Windows Server.

The fix

Stop fighting HttpPlatformHandler for the control plane. Run admin and apps as Waitress scheduled tasks instead:

cd C:\iVistaar
.\scripts\install-admin-service.cmd -Port 8080

That binds a public gateway + Waitress for the admin UI and hosts each app on its own localhost port — no HttpPlatformHandler process spawn for the control plane.

Avoid this class of problem

iVistaar is built for locked-down Windows shops that hit this exact failure. Folder → deploy → org URL under /apps/<slug>/, with service mode as the recommended path.

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.

Related errors