Os ambientes de teste locais são ferramentas altamente úteis para desenvolvedores e proprietários de sites WordPress. Embora sejamos parte da DevKinsta, nossa própria ferramenta de desenvolvimento local gratuita, MAMP também é uma excelente maneira de criar uma instância WordPress. Entretanto, pode ser difícil fazer muitos testes quando você não consegue acessar seu site, e é exatamente isso que um erro MAMP HTTP 500 irá resultar.

Este erro é particularmente problemático porque raramente fornece qualquer informação útil ou dicas sobre a origem do problema. Felizmente, você geralmente pode rastrear a causa de erros PHP, um arquivo .htaccess corrompido ou plugins WordPress problemáticos, todos relativamente fáceis de corrigir.

Neste artigo vamos explorar as causas deste erro e caminhar por três passos simples de solução de problemas para colocar sua instalação MAMP novamente no caminho certo. Vamos mergulhar!

Uma introdução ao erro HTTP 500

O Hypertext Transfer Protocol (HTTP) 500 Internal Server Error é uma mensagem que às vezes pode aparecer quando você está tentando carregar uma página.

Este é um erro genérico, “catch-all”. Essencialmente, o servidor não foi capaz de carregar a página por uma razão ou outra, mas também não conseguiu determinar um código de erro mais específico para usar:

Um erro HTTP 500 no Google Chrome.
Um erro HTTP 500 no Google Chrome.

A apresentação do erro pode variar com base no navegador específico que está sendo usado, e alguns websites têm suas próprias páginas de erro personalizadas. Portanto, o que você está vendo pode não se parecer exatamente com a imagem acima, mas o básico é o mesmo.

Este é um erro frustrante, principalmente por ser tão vago. Se acontecer em uma instalação MAMP, pode ser ainda mais complicado, pois há mais causas potenciais.

Com o WordPress em geral, as causas mais comuns de um erro HTTP 500 são incompatibilidades de plugin e um arquivo .htaccess corrompido ou ausente. Este arquivo lida com a configuração do servidor, portanto, problemas lá podem causar uma variedade de problemas.

Outra possível fonte específica para erros no MAMP entra em jogo quando seu site encontra um erro fatal no PHP. Isto é freqüentemente o resultado de arquivos mal configurados ou código incorreto. Nestes casos, verificar os logs de erros do PHP para sua instalação muitas vezes revelará o arquivo que está causando o problema, bem como o problema específico com o código.

Como corrigir o erro HTTP 500 no MAMP

Nesta seção, vamos caminhar na solução de cada uma das causas potenciais de um erro 500 em uma instalação do MAMP WordPress. Você deve seguir estas etapas em ordem e só proceder à próxima correção se o problema persistir.

Passo 1: Verifique o erro MAMP PHP Log e resolva problemas de código

A primeira etapa de solução de problemas que você deve tomar é verificar o log de erros PHP de sua instalação MAMP para detectar problemas. Este log é um arquivo texto com uma listagem cronológica de todos os erros PHP que a instalação encontrou e, se forem problemas de código PHP, em qual arquivo eles ocorreram.

Você pode encontrar este arquivo em sua pasta de logs MAMP. No Windows, o caminho é C:MAMP\logs. Em um Mac, é /Applications/MAMP/logs. Uma vez lá, procure o arquivo chamado php-error:

Log de erros PHP no MAMP.
Log de erros PHP no MAMP.

Abra o arquivo e procure por quaisquer linhas que indiquem problemas. Elas começarão com “PHP Parse error”. Eles também normalmente lhe dirão exatamente qual é o problema e em qual arquivo ele está localizado.

As questões que você vê aqui podem variar. Neste exemplo de Stack Overflow, o usuário tinha ponto-e-vírgula no final de algumas linhas no arquivo listado. Estas deveriam ter sido vírgulas, ao invés disso, e corrigindo isto resolveu o erro.

Se o registro de erros estiver vazio, ou se a correção dos erros nele não resolver o “Erro 500”, prossiga para o próximo passo.

Passo 2: Gerar um novo arquivo .htaccess

A seguir, você vai querer tentar criar um novo arquivo .htaccess e ver se isso resolve o problema. Este arquivo chave do WordPress está localizado na raiz da pasta do seu site dentro do diretório MAMP.

No Windows, o caminho padrão para a pasta do seu site é C:MAMP\htdocs. Em um Mac, é /Applications/MAMP/htdocs.

Uma vez que você esteja na pasta, localize o arquivo .htaccess:

arquivo .htaccess para a configuração do Apache.
arquivo .htaccess para a configuração do Apache.

Renomear este arquivo para algo como “.htaccess-old”. Isso irá efetivamente removê-lo da equação quando o WordPress for carregado. Em seguida, tente carregar seu site novamente. Se ele funcionar, você sabe que este arquivo foi o culpado.

O passo final é gerar um novo arquivo .htaccess. Para isso, dirija-se ao painel de controle do WordPress e navegue até Settings > Permalinks:

Salvar mudanças permalink no WordPress.
Salvar mudanças permalink no WordPress.

Não mude nada nesta página. Ao invés disso, basta rolar para baixo e clicar em Salvar mudanças. Isto irá regenerar o arquivo .htaccess, o que é necessário para evitar 404 erros em suas páginas. Neste ponto, você pode apagar com segurança o arquivo que você renomeou anteriormente.

Passo 3: Desative e teste seus plugins

Se nenhum dos métodos de solução de problemas acima funcionar, o último passo para tentar é desativar todos os plugins de seu site. Se isso resolver o problema, você pode habilitá-los um a um até que o problema retorne. Isto lhe dirá qual plugin é o culpado, e você poderá então procurar substitutos para ele ou contatar seu desenvolvedor para obter assistência.

Se você tiver acesso ao seu painel de controle do WordPress, você pode fazer isso indo para Plugins > Plugins Instalados. Selecione todos eles, e então escolha Desativar no menu suspenso Ações em massa, na parte superior da tela:

Use ações Bulk para desativar todos os plugins em um site WordPress.
Use ações Bulk para desativar todos os plugins em um site WordPress.

Uma vez desativados, tente carregar a página problemática novamente. Se funcionar, agora você pode voltar à sua lista de plugins e voltar a ligá-los um de cada vez, clicando em Ativar.

Após reativar cada plugin individual, atualize sua página. Se ele ainda estiver carregado, passe para a reativação do próximo. Continue este processo até que o erro volte, e você saberá qual plugin está causando o erro.

Se você não tiver acesso ao seu painel de controle do WordPress devido ao erro 500, você pode desativar todos os plugins através do sistema de arquivos. Volte ao diretório do seu site na MAMP e abra a pasta wp-content. Dentro de você encontrará uma pasta chamada plugins:

Renomeie a pasta de plugins para desativar todos os plugins e restaurar o acesso.
Renomeie a pasta de plugins para desativar todos os plugins e restaurar o acesso.

Renomeie esta pasta para algo como “Plugins-Disabled”, o que efetivamente desativará tudo o que está dentro. Agora você deve ter acesso ao seu painel de controle do WordPress.

Vá em frente e faça login lá, e então renomeie a pasta de volta para plugins enquanto o painel de controle ainda estiver aberto. Eles devem aparecer na lista “Plugins” em seu painel, e você pode proceder para desativá-los todos e testá-los um de cada vez, como descrito acima.

Resumo

Uma mensagem de Erro 500 pode parar seu teste de WordPress. Este erro pode ser frustrante, mas não tem que atrasá-lo. Embora a mensagem em si seja misteriosa, o verdadeiro culpado é geralmente fácil de encontrar e de endereçar.

Para solucionar problemas e corrigir um erro MAMP HTTP 500, você pode tentar os seguintes passos:

  1. Verifique o log de erros do MAMP e resolva quaisquer problemas de código que apareçam.
  2. Gerar um novo arquivo .htaccess.
  3. Desative todos os seus plugins WordPress e teste cada um deles para detectar problemas.

Se você quiser estender a experiência livre de erros ao seu site de produção, considere hospedá-lo na Kinsta. Nossos planos de hospedagem de aplicativos, hospedagem de banco de dados e hospedagem gerenciada de WordPress garantem que seu site esteja sempre disponível quando seus usuários precisarem.

E não se esqueça de verificar DevKinsta como uma poderosa alternativa ao MAMP para testes locais!