Como corrigir o erro 404 Not Found no WordPress
O que é o erro 404 no WordPress?
O erro 404 no WordPress é o código de status HTTP que o servidor devolve quando a URL é válida, o servidor está no ar, mas o recurso pedido não existe naquele endereço. Diferente do 403 (acesso negado), no 404 o servidor simplesmente não acha o conteúdo. O caso mais comum no WordPress é todos os posts retornarem 404 enquanto a página inicial abre normal, sinal clássico de permalinks ou regras de rewrite quebradas.
Como identificar
- Mensagem “404 Not Found – The requested URL was not found on this server” ou a página 404 do tema.
- A página inicial abre normalmente, mas todos os posts e páginas internas retornam 404.
- O erro começou logo após migrar de host, trocar de domínio ou mudar a estrutura de links permanentes.
- O Google Search Console acusa aumento de “Não encontrada (404)” na cobertura de indexação.
Como prevenir
- Antes de migrar de host ou domínio, anote a estrutura de links permanentes e regrave-a no destino
- Mantenha backup automático do .htaccess junto com os arquivos do site
- Ao trocar o slug de um conteúdo, crie sempre um redirect 301 do endereço antigo para o novo
Causa
- Regras de rewrite ausentes no .htaccess (Apache) ou bloco try_files mal configurado (Nginx) após migração.
- Estrutura de links permanentes alterada sem regravar as regras de reescrita.
- Slug do post ou da página alterado sem criar um redirecionamento 301 do endereço antigo.
- mod_rewrite desativado no Apache, impedindo o WordPress de interpretar URLs amigáveis.
- Conteúdo realmente excluído (post na lixeira ou despublicado) cujo link ainda circula.
Como resolver
- Regrave os links permanentes: no wp-admin, vá em Configurações > Links permanentes e clique em Salvar alterações sem mudar nada. Isso força o WordPress a reescrever as regras de rewrite do .htaccess.
- Restaure o .htaccess padrão: se a tela de links permanentes avisar que o arquivo não é gravável, edite o .htaccess na raiz via FTP e cole o bloco de rewrite padrão do WordPress.
- Confirme o mod_rewrite no Apache: peça ao host para verificar se o mod_rewrite está ativo e se o AllowOverride permite que o .htaccess processe regras de reescrita.
- Crie redirecionamentos 301 para slugs alterados: se um post mudou de endereço, aponte a URL antiga para a nova com um redirect 301 para não perder o link nem o ranqueamento.
- Cheque a URL do site: em Configurações > Geral, confirme que Endereço do WordPress e Endereço do site batem com o domínio real (com ou sem www, http vs https).
# .htaccess padrao do WordPress - recria as regras de rewrite que resolvem o 404
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>














