O que é o erro 500 e por que ele ocorre?


Se você chegou até aqui é porque provavelmente está tendo que lidar com o famoso erro 500, certo? Então você está no lugar certo, continue a leitura para entender mais sobre o assunto e, principalmente, saber como evitá-lo.

O Erro 500 (Internal Server Error), é um tipo de status http que o webservice (Apache/Nginx ou IIS) retorna quando ele não consegue especificar o erro real que ocorre internamente durante o acesso ao site.

Tá sem tempo e prefere ouvir o conteúdo? Clique no player abaixo.

O contexto do erro 500

Quem desenvolve e mantém aplicativos e sites, geralmente, já conhece bem o erro 500 e prefere ao máximo ficar bem longe dele.

O motivo é que, apesar de, em geral, o erro 500 ser fácil de consertar, ele não costuma ter uma causa fácil de ser apurada.

Essa especificidade torna a identificação da solução algo complicado de executar.

A melhor maneira de identificar o problema raiz do erro 500 depende de características do servidor e também do modo em que a aplicação foi concebida.

Considere algumas dicas de debugging que podem ajudar a diagnosticar e corrigir as causas comuns desse problema.

Dentre as principais causas do erro 500, podemos destacar as seguintes situações e indicações a serem verificadas em um primeiro momento:

Erros de programação

É indicado ativar o debug da aplicação/php para analisar o log de erro e filtrar se pode estar sendo gerado algum alerta responsável pela ocorrência do erro.

Exemplo: erro por falta de memória RAM (Fatal error: Allowed memory size)

Estouros dos processos PHP / recursos disponíveis ao domínio

Isso pode ocorrer de acordo com a quantidade de recurso ou até mesmo a quantidade de processos PHP que o site tenha disponível para o uso.

O consumo dos recursos PHP pode ser verificado na ferramenta de ‘Performance’ no Painel de Controle (saiba mais no final deste artigo), e também podem ser verificados os scripts que estejam apresentando lentidão no acesso em “Configuração PHP” também no Painel de Controle.

Configurações no arquivo htaccess:

Caso o domínio esteja utilizando um arquivo “.htaccess“, ele pode estar com alguma configuração e/ou comando incorreto (No ambiente windows, o arquivo em questão é o web.config).

Erro 500 – Debugando plataformas populares

Sua aplicação está rodando através de um CMS, como o WordPress, Joomla ou Drupal?

Se positivo, é provável que, por serem plataformas testadas e com várias versões de melhoria, elas não causem o erro 500.

No entanto, dependendo do caso, quando a instalação está incorreta, por exemplo, esse tipo de erro acaba sendo comum e persistente.

Estes são alguns dos problemas comuns que podem causar erro 500 em plataformas populares:

1. Software atualizado

Se o software for atualizado para uma nova versão e você se depara com o erro 500, é provável que a atualização tenha falhado e precise ser corrigida.

Talvez você possa encontrar instruções sobre isso no site do fornecedor. Se o software acabou de ser instalado, algo pode ter falhado no processo de instalação.

2. Novo plugin

Se o erro acontecer após um plugin novo ser ativado, é uma boa ideia desfazer a mudança (rollback) e tentar a instalação novamente.

Até mesmo plugins consagrados e testados podem apresentar conflito com outros plugins do seu site.

3. Atualização da instalação core do software

Se a instalação core do software foi atualizada, plugins e temas mais antigos podem se tornar incompatíveis com esta atualização.

Quando acontece esse problema, a única solução é desativar esses softwares mais antigos até o problema se resolver.

Por si só, desativá-los não irá resolver o seu problema, porém após identificar o que está causando o erro, é possível entrar em contato com o desenvolvedor responsável e, talvez, conseguir uma correção.

Dentre as principais causas para as incidências do erro 500 que identificamos diariamente em nosso suporte, destaco algumas e o tratamento para cada caso:

Quantidade de recurso necessária para a aplicação de maneira desproporcional a necessidade real do site:

Tenha sempre em mente que os requisitos mínimos que uma aplicação possui podem aumentar de maneira exponencial de acordo com os componentes que ela possua.

Um bom exemplo disto é o Magento que, em sua versão 1.9, possuía a necessidade mínima de 256Mb de memória RAM, enquanto seu sucessor na versão 2.0 passou a necessitar de 2Gb de memória RAM.

É extremamente importante ler sua aplicação e ter ciência desses detalhes, pois podem ser cruciais para seu site ter a melhor performance e desempenho.

Dimensionamento dos processo PHP inadequados à memória RAM disponível:

Ainda no exemplo do Magento 1.9, podem existir incidências do erro 500 caso os processos PHP não sejam o bastante para o domínio.

Sendo a memória RAM proporcional aos processos PHP, o indicado inicialmente para uma instalação pura do Magento 1.9 seriam 4 Processos PHP de 256Mb cada um (de modo que o total de memória ram indicada seria de 1Gb).

Enquanto o Magento 2, teria uma necessidade muito superior a esta, com base em seus requisitos mínimos, a qual já seria no mínimo de 8Gb de ram e 4 Processos PHP.

Estas configurações podem variar, em alguns casos requisitando valores mais altos ou até mesmo inferiores se a aplicação estiver devidamente otimizada.

Excesso de requisições por página:

Como o erro 500 pode ocorrer devido o esgotamento dos processos PHP, o excesso de requisições em uma página pode ocasionar o erro da mesma forma.

Sendo indicado a página principal de todos os tipos site possuir o mínimo necessário de informações para que seu carregamento seja ágil e breve ao PHP.

Seja uma loja virtual ou portal de notícias, o excesso de informações acumuladas pode prejudicar a estabilidade do site em si.

Instalação de plugin/componente:

Por vezes a instalação de algum plugin pode necessitar inserir regras no arquivo .htaccess, que caso tenha alguma outra diretiva em conflito poderá ocasionar o erro 500.

É indicado efetuar um backup prévio antes de qualquer instalação ou atualização importante, para evitar ocorrências do erro 500.’

Como a KingHost ajuda você a evitar o erro 500?

Quem é cliente KingHost tem acesso, no painel de controle, à ferramenta “Performance”, que mostra informações que ajudarão você a evitar o erro 500.

imagem do painel de controle mostrando ícone de performance - post erro 500

Clicando no ícone, é possível acompanhar o consumo em tempo real, a média de uso de recursos utilizados e até mesmo simular o desempenho do seu projeto em outros planos de hospedagem.

comparação sobre consumo e performance no painel de controle da kinghost - post erro 500

Tela de consumo e performance no painel de controle da KingHost.

Monitore também o histórico de consumo de memória RAM e CPU de cada site, de forma a acompanhar e evitar que imprevistos como o erro 500 aconteçam.

tela mostrando utilização de memória no painel de controle da kinghost - post erro 500

Além disso, na ferramenta “Performance” você também pode ter acesso a um diagnóstico completo sobre a utilização de recursos e recomendações para melhorar o desempenho do seu site.

O documento, que pode ser baixado gratuitamente no painel de controle do cliente KingHost no botão acima, mostra indicadores do seu site (ou sites) como:

  • Consumo de CPU;
  • Consumo de memória;
  • Banco de Dados  – requisições;
  • PHP – requisições;
  • Acesso/visitas.

Além disso, no diagnóstico você encontra uma visão geral, estatísticas de acesso, consumo de processamento e, o mais importante: recomendações técnicas para que você tenha uma funcionalidade ainda melhor.

Ainda não é cliente da KingHost? Clique no banner abaixo e conheça nossos planos. Estamos preparados para ser sua parceira de sucesso!

Banner com mulher no centro, sorrindo enquanto pesquisa sobre hospedagem de sites da KingHost no seu computador

Agora que você já entende mais sobre erro 500, ficou com alguma dúvida? Deixe nos comentários. Estamos à disposição para tirar dúvidas também. 

Luis Trindade
Últimos posts por Luis Trindade (exibir todos)
Resumo
O que é o erro 500 e por que ele ocorre?
Nome do Artigo
O que é o erro 500 e por que ele ocorre?
Descrição
O erro 500 é um erro muito comum em sites, mas você sabe o que significa? Veja agora como corrigir problemas que ocasionam erro 500.
Autor
Nome
KingHost
Logo

Comentários

comentário(s)