Como resolver erro 500 e 404 em sites PHP (guia completo)

Se ao acessar um site você já se deparou com mensagens como Erro 500 – Internal Server Error ou Erro 404 – Página não encontrada, saiba que esses são dois dos problemas mais comuns em sites PHP.

Neste guia completo, você vai entender o que causa esses erros, como identificar a origem e como corrigir passo a passo, mesmo em sites PHP puro.

O que é o erro 500 (Internal Server Error)

O erro 500 indica que o servidor encontrou um problema interno ao tentar processar a requisição. Em sites PHP, isso normalmente significa que algum script falhou, mas o servidor não conseguiu informar exatamente o motivo ao navegador.

Diferente de outros erros, o 500 não aponta diretamente a causa, o que torna o diagnóstico fundamental.

Principais causas do erro 500 em PHP

Erro de sintaxe no PHP

Um simples ponto e vírgula faltando, uma função inexistente ou um include incorreto pode gerar erro 500.

Permissões incorretas de arquivos ou pastas

Permissões erradas impedem o servidor de executar scripts PHP corretamente.

Arquivo .htaccess com erro

Uma regra mal escrita no arquivo .htaccess pode derrubar todo o site.

Funções desativadas no servidor

Hospedagens compartilhadas costumam bloquear funções como exec, shell_exec ou ini_set.

Estouro de memória ou timeout

Scripts muito pesados podem exceder os limites configurados no servidor.

Como identificar a causa do erro 500 corretamente

Ativar exibição de erros no PHP

Use temporariamente no início do script:

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

Atenção: nunca deixe essa configuração ativa em produção.

Verificar os logs do servidor

Os logs mostram exatamente o que está quebrando.

Testar com um script PHP simples

Crie um arquivo teste.php:

Se nem isso funcionar, o problema está no servidor ou na configuração.

Como corrigir o erro 500 em sites PHP (passo a passo)

  1. Remova temporariamente o arquivo .htaccess
  2. Revise o último arquivo alterado
  3. Confira permissões de arquivos e pastas
  4. Confirme a versão do PHP no servidor
  5. Leia o log com atenção para identificar o arquivo e a linha do erro
chmod 755 pasta
chmod 644 arquivo.php

O que é o erro 404 (Página não encontrada)

O erro 404 acontece quando o servidor está funcionando corretamente, mas o arquivo ou rota solicitada não existe.

Ele é comum em URLs digitadas incorretamente, links quebrados ou rotas mal configuradas.

Principais causas do erro 404 em sites PHP

Caminho do arquivo incorreto

Em servidores Linux, diferença entre letras maiúsculas e minúsculas importa:

/Pagina.php
/pagina.php

URLs amigáveis mal configuradas

O RewriteEngine pode não estar funcionando corretamente.

Arquivo inexistente no servidor

O link aponta para um recurso que nunca foi criado ou foi removido.

Como resolver erro 404 em sites PHP

Conferir se o arquivo realmente existe

Teste acessando diretamente:

https://site.com.br/arquivo.php

Configurar corretamente o .htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L]

Verificar caminhos relativos e absolutos

Prefira caminhos absolutos:

require $_SERVER['DOCUMENT_ROOT'] . '/config.php';

Diferença entre erro 500 e erro 404

Erro Significado
500 Erro interno no servidor
404 Página ou recurso não encontrado

Como evitar erros 500 e 404 no futuro

  • Manter logs ativos
  • Testar alterações antes de subir para produção
  • Usar controle de versão
  • Monitorar erros do servidor
  • Padronizar rotas e includes

Se o problema for acesso negado, veja também como resolver o erro 403 Forbidden em PHP.
Erro 403 Forbidden em sites PHP: o que é e como resolver

Conclusão

Os erros 500 e 404 são comuns em sites PHP, mas raramente são problemas graves quando diagnosticados corretamente.

Com acesso aos logs, boas práticas de configuração e atenção aos detalhes, é possível resolver esses erros rapidamente e evitar que eles se repitam, garantindo estabilidade e uma boa experiência para o usuário.