If you’re just trying to visit a page
- Check the URL spelling / path; try the bare origin (e.g.,
https://example.com/). - Hard-refresh / clear cache, or try another network/browser.
- If it’s a subdomain/service URL, its endpoint may not exist anymore.
If you own the site (404 at /)
- Confirm it’s really 404
curl -I https://your-domain/If it’s404, continue. - Check deployment/output
- Static hosting: is there an
index.htmlin the doc root? - SPA (React/Vue/etc.): you need a fallback to
index.html.
- Static hosting: is there an
- Server routing
- Nginx
location / { try_files $uri /index.html; } - Apache (.htaccess)
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.html [L]
- Nginx
- Reverse proxy / platform config
- Verify upstream health and the proxy
root/locationmapping. - Cloud hosts (e.g., App Engine/Firebase/Vercel/Cloud Run) need correct rewrites or
app.yaml/config for/.
- Verify upstream health and the proxy
- Logs & cache
- Check server/CDN logs for
/. - Purge CDN cache; ensure the origin actually serves
/(not a 404 from upstream).
- Check server/CDN logs for
If you tell me where this lives (host/platform, stack), I can tailor the exact rewrite/deploy steps.