Erros de servidor: O que são e como solucionar?

Você acabou de criar e publicar seu site ou fez alterações ou atualizações importantes e após isso, vai ansioso acessá-lo para ver como ficou, mas eis que dá de cara com um erro de servidor! Vem a frustração e a dúvida: O que fazer? Esta é uma pergunta que muita gente faz, sem saber como responder, mas que a partir de agora, vai ficar fácil interpretar os principais erros de servidor, saber o que são e como solucioná-los.

O que são erros de servidor?

A primeira questão que se deve compreender, para tratar qualquer problema, é sua origem. Não é diferente no caso de um erro de servidor.

Embora normalmente as pessoas imaginem que um erro de servidor seja responsabilidade do suporte resolver, afinal aparece como “erro de servidor”, nem sempre é assim, principalmente nos casos em que este erro passou a ocorrer após uma alteração feita no seu site.

Para começar, lembre-se que a maior parte dos planos de hospedagem existentes no mercado, consistem de planos de hospedagem compartilhada, o que significa que seu site está hospedado em um servidor juntamente com vários outros sites e que todos devem usar simultaneamente os mesmos serviços, incluindo o web server responsável pela exibição do seu site e de todos os demais. Assim, o servidor tem que dispor de flexibilidade para atender os mais diversos tipos de aplicação web.

Servidores web são muito poderosos e são capazes de atender um volume imenso de solicitações, mas como tudo na vida, há limites e há regras para que isso ocorra. Quando um limite é excedido ou uma regra não é cumprida, é quando o erro acontece. Resumindo, o servidor não pôde atender sua solicitação e devolveu-lhe um erro.

Em boa parte dos casos, é razoavelmente simples de se resolver a questão que originou o erro, mas para tanto, é necessário que o responsável do site tenha algumas noções básicas relativas ao ambiente de hospedagem, ao site e realize algumas poucas verificações.

Vale ressaltar que apesar do conceito ser o mesmo para qualquer servidor, os meios para se tratar cada problema variam de um servidor para outro, principalmente quando há diferença nos sistemas operacionais instalados no servidor, como é o caso do Windows ou Linux. Aqui o nosso foco, são os servidores Linux.

Por fim, mas não menos importante, quando falamos de erros de servidor, estamos especificamente nos referindo a erros do serviço que exibe páginas web e que no caso de servidores Linux, o mais comum, é o Apache. Há ainda quem trate como erros de HTTP, que é o protocolo de comunicação usado neste serviço.

Quais os erros de servidor?

Os erros de servidor são agrupados por números que sempre começam com o dígito 5, sendo os que comumente ocorrem, são:

500 Erro interno de servidor (Internal Server Error)

É o erro mais comum e ocorre quando o servidor web não consegue processar uma solicitação realizada pelo site, cujas causas mais frequentes estão associadas às permissões de arquivos e pastas do site, versão da linguagem PHP, ou ainda instruções incorretas ou inadequadas contidas no arquivo .htaccess do site;

502 Bad Gateway

Este é um erro relacionado a um problema de rede, mais especificamente na comunicação entre dois pontos da rede, sendo um deles o servidor em que está o site e o outro, por exemplo, um servidor do seu provedor de acesso;

503 Service Unavailable (Serviço Indisponível)

Ocorre também quando o servidor não consegue responder a uma solicitação, mas costuma estar associada a sobrecarga. Embora seja uma condição de erro que de fato representa um erro do servidor e não do site ou da rede, a causa pode não estar relacionada ao servidor propriamente dito, como nos casos em que um site está excedendo um limite da conta de hospedagem, por ataque DDoS, por exemplo;

504 Gateway Timeout

É um erro menos comum de ocorrer, porém também é passível de ser encontrado. Ao contrário do que muita gente imagina, é incomum ou raro que você faça um acesso direto a um servidor que hospeda um site, mas que utilize um outro servidor que funciona como um gateway (porta) ou proxy que direciona o tráfego de dados ao destino. Quando o tempo que o gateway ou proxy têm para receber o resultado da solicitação é excedido, o erro acontece;

505 HTTP Version not supported

Atualmente deve ser muito raro de se encontrar este tipo de erro, porém é possível, particularmente em acessos por equipamentos muito antigos e desatualizados. Isso porque o erro de HTTP em questão, deve-se a versões antigas e inseguras do protocolo, que por sua vez pressupõe navegadores antigos.

Como resolver erros de servidor?

Antes de mais nada, é importante salientar que deve-se contar com backups atualizados sempre que se for fazer alterações no site e nas suas configurações, visto que sempre pode-se retornar a condição anterior ao erro, caso se faça uma alteração que não seja possível ou não se saiba como reverter. Tendo em mente isso, vamos a algumas das soluções para os erros anteriormente apresentados:

Permissionamento

Esta é uma causa frequente de erros internos do servidor. Por padrão e por questões de segurança, o indicado é que arquivos tenham permissão 644 e pastas, 755. Mesmo sendo pouco comum, alguns CMSs mudam as permissões padrão para algumas instalações, ser reverter para o permissionamento original após a conclusão do processo;

Arquivo .htaccess

Constitui outra causa frequente de erros. O arquivo .htaccess costuma constar na pasta principal do site, mas também pode estar localizado em outras pastas e constitui um meio de configurar parâmetros do site e ambiente da conta. Ao realizar mudanças neste arquivo, renomeie o original para ter uma cópia inalterada dele e assim retornar ao padrão anterior à modificação rapidamente;

Versão do PHP

Também é outro motivo comum de se ter erros HTTP, na medida em que a programação do site pode estar realizando requisições que são incompatíveis com a versão utilizada. Resolve-se facilmente a questão, mudando-se a versão exigida pelo site ou CMS usado, diretamente no cPanel da conta;

Extensões do PHP

Assim como no caso da versão, determinados sites, frameworks e CMSs exigem que algumas extensões sejam ativadas para que o site funcione corretamente. A ausência de uma extensão exigida, irá produzir erros. Também como no caso da versão do PHP, as extensões disponíveis podem ser rapidamente e facilmente ativadas via cPanel;

Configurações do PHP

Como parte da versão do PHP e suas extensões, o cPanel também oferece a possibilidade de se configurar aspectos como memória, tempo máximo de execução, entre outros. Configurações incorretas ou mesmo ausência delas, pode ser uma causa de erro, por falta de memória para execução de uma rotina, por exemplo;

Mod_security

Este é um módulo de segurança do Apache, cujo papel é a inclusão de regras de segurança para determinadas solicitações feitas por uma conta, bloqueando a programação que atende aos padrões e práticas inadequadas. Neste caso, há duas alternativas. Corrigir a programação correspondente, ou desativar a regra que acarreta em erro, porém tendo-se em mente que ao fazê-lo, a segurança do site estará comprometida.

Firewall

Opções de segurança como o IPTables e o Imunify360, são algumas das possíveis causas. No primeiro caso, somente o suporte da hospedagem pode verificar. No segundo, pode-se identificar se há alguma regra do Imunify360 que esteja acarretando o problema e efetuar a correção correspondente ou a liberação através do cPanel.

Outros

Nos casos que não constam listados nos tópicos acima, é conveniente consultar o suporte técnico da sua empresa de hospedagem, a qual tem condição de verificar outras possibilidades para que o erro esteja ocorrendo e consequentemente a aplicação da solução indicada.

Conclusão

Erros de servidor ocorrem na maior parte das vezes, devido a problemas de configuração ou ajustes no ambiente de hospedagem, de modo que o mesmo esteja afinado com as exigências que o site ou aplicação web necessitam para serem executados. Ter ciência dos requisitos necessários ao correto funcionamento do site, bem como saber os meios para configurar a conta corretamente, é o caminho para resolução de boa parte dos erros mais comuns.