Um erro 500 significa que há um erro no código PHP que seu site executa. Quando os erros não são descobertos, o servidor para tudo e devolve uma página que diz “Erro 500”. Servidores diferentes estão configurados para exibir esses erros 500 de maneira ligeiramente diferente um do outro, mas todos querem dizer a mesma coisa: há um erro de PHP não resolvido no código do site.

O que causa os erros 500 e como resolvê-los

Primeiro, você precisa ver quais são os erros. Tentar imaginar qual poderia ser o problema e tentar diversas soluções pode causar ainda mais problemas. Se você está vendo erros 500, a primeira coisa a fazer é ativar a depuração. Você pode fazer isso adicionando algumas linhas ao arquivo wp-config.php. Com o registro de erros ativado você verá qual é o real problema.

Sem memória

A causa mais frequente dos erros 500 é o servidor ficar sem memória. Isso pode acontecer quando a reserva de memória é pequena antes de você ativar um plugin, e com aquele plugin ativado, passa a não haver memória suficiente.

No arquivo de registro de erros, você verá algo assim:

Allowed memory size of SEU_LIMITE bytes exhausted (tried to allocate ALGUMA_MEMÓRIA bytes) in...

Se o primeiro número (SEU_LIMITE) for menor que 128M, significa que você deve aumentar a quantidade de memória alocada ao PHP. Normalmente, você pode aumentar a quantidade de memória disponível, conforme descrito na documentação de configurações de memória do WordPress.

No entanto, se o número SEU_LIMITE for bem alto, ou se você o aumentar e não adiantar, o código talvez esteja executando um loop infinito (funções que chamam umas às outras em um ciclo infinito). Para depurar algo assim, use nosso fórum de suporte técnico. Explique o problema, mostre o erro de PHP e nossos atendentes de suporte o ajudarão.

Conflito no código

A segunda causa mais comum de um erro fatal do PHP é conflito entre diferentes plugins e temas. Isso pode se manifestar em muitos erros diferentes, dependendo das funções específicas que estão em conflito.

Visto que seu site está paralisado no estado de erro 500, você não pode usar a administração do WordPress para fazer alterações e resolver problemas. Use um programa de FTP e acesse o diretório de plugins (wordpress>wp-content>plugins). Exclua qualquer plugin que você suspeite que esteja relacionado com o conflito. Você também pode excluir os plugins do WPML sem problemas. Excluir os plugins do WPML não altera as informações de idiomas no seu site. Após resolver o conflito, ative o WPML novamente e todas as informações de idiomas serão restauradas.

Compatibilidade com versões do WordPress

O próximo problema mais comum é a compatibilidade com versões do WordPress. A equipe do WPML sempre lança versões antes dos novos lançamentos do WordPress. Não se esqueça de atualizar o WPML conforme a versão do WordPress que você está usando. É sempre bom usar a versão mais recente do WordPress (mais estável e segura) junto com a versão mais nova do WPML. Antes de atualizar, recomendamos fazer um teste de atualização em uma cópia de testes do seu site. Isso o ajudará a se certificar de que seu tema e TODOS os seus plugins são totalmente compatíveis com a nova versão do WordPress.

Compatibilidade com versões do PHP e extensões de PHP

O WPML pode ser executado em uma ampla variedade de versões do PHP (veja os requisitos mínimos para ter todos os detalhes). O PHP padrão vem com uma lista de extensões padrão. Em raros casos, empresas de hospedagem desativam certas extensões de que não gostam. Caso isso aconteça, você verá erros indicando que alguma extensão ou função não existe.

Quando vir algo assim, é melhor relatar isso em nosso fórum de suporte técnico. Nossos atendentes vão detectar o problema e ver o que está faltando. Daí, trabalharemos com seu provedor de hospedagem para ativar o que está faltando.