UUtilpedia
27/10/2026 · 4 min de leitura

Códigos de status HTTP: o que significam 404, 500, 403 e os outros

Entenda os códigos de status HTTP por família: o que significam 404, 403, 301, 500, 503 e o que fazer quando aparecem.

Por Daniel Srougi · Atualizado em 27/10/2026.

Toda vez que seu navegador pede uma página, o servidor responde com um código de status HTTP: um número de três dígitos que resume o que aconteceu com aquela requisição. Você quase nunca vê esse número no dia a dia, porque quando tudo dá certo o navegador simplesmente mostra a página. Mas quando algo quebra, o código aparece na sua cara: 404, 500, 403. Entender o que cada um diz economiza horas de depuração, porque o próprio número já aponta para o lado onde está o problema.

O primeiro dígito define a família do código e, com ela, o tipo de resposta. Decorar as cinco famílias é mais útil do que decorar código por código: se você sabe que 4xx é culpa do pedido e 5xx é culpa do servidor, já sabe onde começar a investigar. Vamos por família.

1xx — Informativo

A requisição foi recebida e o processo continua; são respostas provisórias que o navegador trata sozinho e você raramente percebe.

  • 100 Continue — pode seguir enviando o corpo da requisição.
  • 101 Switching Protocols — o servidor vai trocar de protocolo (comum em WebSocket).

2xx — Sucesso

Deu tudo certo: o pedido foi recebido, entendido e processado. É a família que você nunca vê como erro.

  • 200 OK — a requisição funcionou; é o código mais comum da web.
  • 201 Created — algo foi criado com sucesso (típico de APIs após um POST).
  • 204 No Content — deu certo, mas não há conteúdo para devolver.

3xx — Redirecionamento

O recurso que você pediu está em outro lugar, e o navegador normalmente segue o redirecionamento sozinho.

  • 301 Moved Permanently — mudou de endereço para sempre.
  • 302 Found — redirecionamento temporário.
  • 304 Not Modified — nada mudou desde a última vez; use a versão do cache.

4xx — Erro do cliente

O problema está no pedido: URL errada, falta de permissão, dados malformados. A correção costuma estar do seu lado, não do servidor.

  • 400 Bad Request — o servidor não entendeu a requisição.
  • 401 Unauthorized — falta autenticação (você precisa fazer login).
  • 403 Forbidden — autenticado, mas sem permissão.
  • 404 Not Found — o recurso não existe nesse endereço.
  • 429 Too Many Requests — você mandou pedidos demais; espere.

5xx — Erro do servidor

O pedido estava certo, mas o servidor falhou ao processá-lo. Aqui a correção quase sempre está do lado de quem mantém o site, não de quem acessa.

  • 500 Internal Server Error — erro genérico no servidor.
  • 502 Bad Gateway — um servidor intermediário recebeu resposta inválida.
  • 503 Service Unavailable — servidor sobrecarregado ou em manutenção.
  • 504 Gateway Timeout — o servidor de trás demorou demais para responder.

Os campeões (e o que fazer)

Alguns códigos aparecem tanto que vale conhecê-los a fundo:

404 Not Found. O endereço pedido não existe. Costuma ser erro de digitação na URL ou link quebrado (página que foi movida ou apagada). O que fazer: confira a URL caractere por caractere; se o link é seu, aponte-o para o endereço correto ou crie um redirecionamento 301.

403 Forbidden. O servidor entendeu o pedido mas se recusa a atendê-lo, mesmo que você esteja logado. O que fazer: verifique permissões de arquivo (em sites PHP é clássico permissão errada em pastas), regras do servidor ou se o recurso é realmente restrito ao seu usuário.

301 Moved Permanently. A página migrou de endereço de forma definitiva. É o redirecionamento que você quer usar ao trocar URLs, porque buscadores transferem a autoridade da página antiga para a nova. O que fazer: ao renomear ou mover uma página, configure um 301 do endereço velho para o novo e evite deixar links apontando para o 404.

500 Internal Server Error. Algo quebrou no servidor e ele não soube como responder. É genérico de propósito: o detalhe real está nos registros. O que fazer: abra os logs do servidor ou da aplicação (em muitos casos um erro de código, conexão com banco ou variável de ambiente faltando) — a mensagem de erro de verdade está lá, não na tela.

503 Service Unavailable. O servidor está temporariamente indisponível: sobrecarga de tráfego ou manutenção. O que fazer: se é um pico de acesso, espere ou escale o servidor; se é um deploy, confira se o processo subiu corretamente. Diferente do 500, costuma se resolver sozinho em instantes.

Essas cinco famílias e um punhado de campeões já cobrem a enorme maioria do que você vai encontrar na prática. Para os demais códigos — e há dezenas deles, de 418 a 451 — guarde na memória a tabela de códigos de status HTTP e consulte sempre que um número novo aparecer no log.

Perguntas frequentes

Qual a diferença entre erro 404 e erro 403?

O 404 Not Found significa que o recurso não existe naquele endereço (URL errada ou link quebrado). O 403 Forbidden significa que o recurso existe, mas o servidor se recusa a entregá-lo por falta de permissão, mesmo que você esteja autenticado.

O erro 500 é culpa de quem acessa o site?

Não. O 500 Internal Server Error é um erro do lado do servidor: o pedido estava correto, mas algo quebrou ao processá-lo. A correção está com quem mantém o site, e o detalhe real do problema aparece nos logs do servidor, não na tela do visitante.

Como sei a qual categoria um código HTTP pertence?

Pelo primeiro dígito: 1xx é informativo, 2xx é sucesso, 3xx é redirecionamento, 4xx é erro do cliente (do pedido) e 5xx é erro do servidor. Só isso já indica de que lado começar a investigar o problema.

Continue lendo