5005xx · Erro do servidor
HTTP 500 Internal Server Error
O 500 Internal Server Error é o erro genérico do servidor: algo falhou durante o processamento e a aplicação não soube classificar de outra forma.
O que significa
Erro genérico: algo quebrou e o servidor não sabe classificar. A requisição era válida, mas o servidor falhou ao respondê-la.
Quando usar
Exceção não tratada. Registre o log e não vaze o stack trace na resposta.
Especificação: RFC 9110
Causas comuns
- Exceção não tratada no código da aplicação
- Falha de conexão com banco de dados
- Variável de ambiente ausente ou configuração incorreta
- Erro de sintaxe ou dependência quebrada após um deploy
Como resolver
- Consulte o log da aplicação: o 500 é genérico de propósito, o detalhe está no log
- Reproduza a requisição em ambiente de desenvolvimento com o mesmo payload
- Confira as variáveis de ambiente e a conectividade com os serviços externos
- Nunca exponha stack trace na resposta — é informação valiosa para um atacante
Exemplo de resposta
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{"erro": "erro_interno", "id_rastreio": "b7f2-91ac"}Perguntas frequentes
- Como investigar um 500 sem detalhe na resposta?
- Pelo log do servidor. Boa prática é devolver um identificador de rastreio na resposta e registrá-lo no log, para ligar o erro relatado pelo usuário à entrada correspondente.
- Qual a diferença entre 500 e 502?
- No 500 a aplicação respondeu e o erro aconteceu dentro dela. No 502 quem responde é um proxy, porque a aplicação de origem devolveu algo inválido ou não respondeu.