Skip to content

Troubleshooting

Find what you're seeing in the first column. Most "my app won't open" problems are one of the first three.

What you see → what it means → what to do

What you see What it means What to do
"Nothing on port N" page The address is right, but no app answered — it isn't running, or it's still in private mode (localhost only). Start the app, and start it on 0.0.0.0. See step 1.
Blank page / "invalid host" / a 400 error The app didn't recognise the web address it was opened with. Add your address to the app's allowed list (Vite allowedHosts, Django ALLOWED_HOSTS, CRA host-check). See step 3.
A login or form fails with a 403 (Django) Django needs to trust your address for secure form submits. Add CSRF_TRUSTED_ORIGINS = ["https://<your-address>"].
"Mixed content" / it jumps to http:// / broken localhost links The app doesn't know it's being opened securely, or the page has http://localhost hard-coded in it. Tell the app to trust the gateway (ProxyFix / trust proxy / SECURE_PROXY_SSL_HEADER); use plain /... paths in the front-end.
Live-reload doesn't work; errors mention ws://localhost The auto-refresh is trying to reach localhost. Point it at the secure address on port 443 (Vite hmr.clientPort: 443, CRA WDS_SOCKET_PORT=443).
It sends you to your lab home page The name in the address isn't a known shortcut or a 2000–9000 port. Use a valid name (app, svc, …) or a port in range. See the addresses.
An app on a port like 1234 or 9100 won't open That port is outside the range the gateway routes. Move the app to a port between 2000 and 9000.
An http://… link Normal — it switches you to https:// by itself. Use https://; nothing to fix.
The browser can't reach the address at all (can't find it / times out) Wrong lab number, the computer is off, or a work VPN/firewall is blocking it. Re-check your lab number; try a phone hotspot to rule out a work network.

The one check worth running

On the lab computer (in code-server's terminal, Jupyter, or SSH), see what your app is actually listening on:

ss -tlnp | grep :5000      # use your port
  • 0.0.0.0:5000 → good; the gateway can reach it.
  • 127.0.0.1:5000 → this is the problem. Start it on 0.0.0.0 instead.
  • no output → the app isn't running (or it's on a different port).

Still stuck

  • Re-read Run your own app for your tool.
  • Paste what you're seeing into an AI assistant using the diagnostic prompt.
  • Ask your instructor — include the exact address you opened, the message you saw, and the output of the ss command above.