1. Quatro camadas possíveis
- CDN / objeto — arquivo não publicado ou path errado
- Proxy —
locationnão cobre a URL - SPA — refresh em rota client-side sem fallback
- API — rota inexistente, método errado ou versão
/v1esquecida
2. SPA: o erro clássico no refresh
Ususuário abre /dashboard direto. O servidor procura um arquivo físico e devolve 404. Solução: fallback para index.html.
# Nginx
location / {
try_files $uri $uri/ /index.html;
}
3. API: responda JSON previsível
curl -i https://api.exemplo.com/v1/pedidos/999
# Ideal: 404 com corpo {"error":"not_found","id":"999"}
BOA PRÁTICA Não devolva a home de marketing como 404 de API — o client precisa de status e corpo claros.