Como corrigir um arquivo .htaccess corrompido no WordPress
O que é o .htaccess corrompido no WordPress?
O .htaccess é um arquivo de configuração que o servidor Apache lê na raiz do WordPress para controlar permalinks, redirecionamentos, regras de segurança e cache. Quando esse arquivo fica corrompido, por uma diretiva com erro de sintaxe, regras duplicadas de plugins ou um módulo do Apache que não existe no servidor, o Apache rejeita a requisição. O resultado é um erro 500 (Internal Server Error), permalinks retornando 404 em todo o site ou acesso bloqueado. Como o WordPress sabe regenerar o .htaccess padrão, restaurar o bloco oficial costuma resolver na hora.
Como identificar
- O site inteiro mostra “500 Internal Server Error” logo após instalar um plugin de cache, segurança ou redirecionamento.
- A home abre, mas todos os posts e páginas internas retornam “404 Not Found”.
- Aparece “Internal Server Error: The server encountered an internal error or misconfiguration” em tela branca.
- Os logs do servidor citam “Invalid command” ou “.htaccess: … not allowed here” apontando uma linha do arquivo.
Como prevenir
- Guarde um backup do .htaccess sempre que ele for editado por você ou por um plugin
- Use editores de texto puro (sem rich text) ao editar o .htaccess para não inserir caracteres invisíveis
- Após instalar plugins de cache ou segurança, confira o .htaccess para garantir que as regras não duplicaram
Causa
- Diretiva com erro de sintaxe gravada por um plugin de cache, segurança ou redirecionamento.
- Regras de reescrita duplicadas (mais de um bloco # BEGIN WordPress) brigando entre si.
- Diretiva que exige um módulo Apache ausente no servidor (ex.: mod_rewrite ou mod_headers desativado).
- Edição manual do .htaccess com um caractere ou bloco quebrado salvo por engano.
- Migração entre servidores trazendo regras incompatíveis (caminhos absolutos ou IfModule de outro host).
Como resolver
- Faça backup do .htaccess atual: via FTP, baixe o .htaccess da raiz do site e renomeie a cópia no servidor para .htaccess_old. Isso o desativa na hora e guarda o conteúdo para inspeção depois.
- Teste se o site volta sem ele: com o arquivo renomeado, recarregue o site. Se o erro 500 sumir, a corrupção estava mesmo no .htaccess e basta gerar um novo limpo.
- Crie um .htaccess padrão: crie um novo arquivo .htaccess na raiz com o bloco oficial do WordPress (veja o código abaixo). Esse é o conteúdo mínimo que faz os permalinks funcionarem.
- Regenere pelo painel: no wp-admin, vá em Configurações > Links permanentes e clique em "Salvar alterações" sem mudar nada. O WordPress reescreve o bloco de permalinks no .htaccess automaticamente.
- Reative os plugins um a um: se o problema voltou após um plugin específico de cache ou segurança, reative-os um a um e confira o .htaccess após cada um para identificar qual grava a regra inválida.
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress














