o 504 Gateway Timeout erro é um dos mais comuns de HTTP 5xx erros enfrentados pelos proprietários e visitantes do site. Para muitos Blogs WordPress e plataformas de comércio eletrônico, saber como consertar erros de servidor como esse é crucial para evitar que seus visitantes conquistados com dificuldade acessem sites concorrentes.

Como o erro 504 Gateway Timeout não informa por que ocorreu, é difícil apontar o que está causando o tempo limite do servidor. Este artigo o ajudará a entendê-lo em profundidade, aprender como diagnosticar sua causa e, em seguida, corrigi-lo.

Depois de tentar todas as várias soluções mencionadas na postagem, seu site deve estar instalado e funcionando em nenhum momento.

Soa interessante? Vamos mergulhar!

Qual é o erro de tempo limite do gateway 504?

Cada vez que você visita um site em seu navegador, o navegador envia uma solicitação para o servidor da web onde o site está hospedado. O servidor processa a solicitação e responde com os recursos solicitados.

Illustration of how HTTP requests and responses work

Como funcionam as solicitações e respostas HTTP

A resposta do servidor inclui um de muitos códigos de status HTTP para indicar o status da resposta ao navegador. Mas nem todos esses códigos de status HTTP são erros. Por exemplo, um Código de status 200 OK significa que o servidor processou a solicitação com sucesso e "Tudo está OK."

o Classe 5xx de códigos de status HTTP indica que algo está errado com o servidor, o servidor está ciente disso e não pode atender à solicitação do cliente. Como resultado, eles também são chamados de Erro de servidor 5xx códigos de status.

Oficialmente, cinco códigos de status são especificados na classe 5xx (500, 501, 502, 503, 504). Você pode encontrar muitos códigos não oficiais também (506, 507, 509, 520, etc.).

O Internet Engineering Task Force (IETF) define o 504 Erro de tempo limite do gateway Como:

O código de status 504 (Tempo limite do gateway) indica que o servidor, enquanto agia como um gateway ou proxy, não recebeu uma resposta oportuna de um servidor upstream que precisava acessar para concluir a solicitação.

Para simplificar ainda mais, esse erro ocorre quando dois servidores estão envolvidos no processamento de uma solicitação e o primeiro servidor (normalmente o servidor principal) atinge o tempo limite ao aguardar uma resposta do segundo servidor (servidor upstream).

O erro 504 Gateway Timeout se manifesta de várias formas. Aqui estão algumas maneiras como geralmente aparece:

The HTTP ERROR 504 in Chrome browser

O 'HTTP ERROR 504' no navegador Chrome

O erro de tempo limite de gateway 504 é semelhante ao 502 Erro de gateway inválido, que indica que o primeiro servidor recebeu uma resposta inválida do segundo servidor (servidor upstream).

504 GATEWAY TIMEOUT status code in Chrome DevTools

O código de status '504 GATEWAY TIMEOUT' no Chrome DevTools

Variações do erro de tempo limite do gateway 504

O navegador exibe qualquer erro 504 Gateway Timeout dentro dele, assim como qualquer outro erro. Como existe uma variedade de sistemas operacionais, servidores da web, navegadores e agentes de usuário, ele pode aparecer de várias maneiras.

Abaixo estão algumas variações comuns da mensagem de erro 504 que você pode encontrar:

  • 504 Gateway Timeout
  • 504 Gateway Timeout NGINX
  • Tempo limite do gateway NGINX 504
  • Erro de tempo limite de gateway
  • Erro 504
  • Erro HTTP 504
  • Erro HTTP 504 - Tempo limite do gateway
  • HTTP 504
  • 504 Erro
  • Tempo limite do gateway (504)
  • Esta página não está funcionando - o domínio demorou muito para responder
  • 504 Gateway Time-out - O servidor não respondeu a tempo
  • Uma tela branca em branco

Todas as respostas de erro acima, embora formuladas de maneira diferente, apontam para o mesmo erro do servidor 504 Gateway Timeout.

Os servidores da Web e sites podem personalizar a forma como mostram o erro 504 Gateway Timeout aos usuários. Alguns deles podem ser legais! É uma excelente tática para conter a decepção dos visitantes.

GitHub’s customized HTTP 504 error page

Página de erro HTTP 504 personalizada do GitHub

Impacto de SEO do erro de tempo limite do gateway 504

Todos os erros 5xx impedem o carregamento de uma página da Web, tornando-os prejudiciais à experiência do usuário. Conseqüentemente, motores de busca como o Google leve esses erros a sério. Se o erro persistir por um longo período, pode até levar à desindexação da página da web dos resultados do mecanismo de pesquisa.

Por exemplo, quando os spiders do Google encontram um 503 serviço indisponível erro, eles entenderão que é um problema temporário, pois é usado principalmente para habilitar o modo de manutenção do site. Assim, eles tentarão rastrear a página novamente mais tarde.

Um erro 504 Gateway Timeout não é necessariamente temporário, pois pode ser devido a vários motivos. E se seu site está fora do ar por apenas alguns minutos e, se os spiders estiverem tentando rastreá-lo várias vezes a cada minuto, eles tentarão veicular a página de seu cache. Eles nem perceberiam.

Mas se o seu site ficar inativo por 6 horas ou mais, o Google irá considerar o erro 504 como um problema sério em todo o site que você precisa corrigir o mais rápido possível. Isso pode impactar negativamente o seu SEO.

Viewing the crawl errors in Google Search Console

Visualização dos erros de rastreamento no Google Search Console

Google Search Console é um dos melhores ferramentas de SEO para monitorar os erros HTTP 5xx do seu site.

Causas do erro de tempo limite do gateway 504

Como o erro 504 é devido a um timeout entre os servidores, o problema provavelmente não é com o dispositivo do cliente ou conexão com a Internet. Isso também inclui seu dispositivo e conexão.

Um erro 504 de tempo limite do gateway indica que o servidor da web está aguardando muito tempo por uma resposta de outro servidor e “atingiu o tempo limite”. Pode haver vários motivos para esse tempo limite: o outro servidor não está funcionando corretamente, está sobrecarregado ou está inativo.

O outro servidor nem sempre precisa ser um servidor externo (por exemplo CDN, Gateway de API). Também pode ser uma entidade semelhante a um servidor dentro do servidor web principal (por exemplo servidor proxy reverso, servidor de banco de dados).

Como corrigir o erro de tempo limite do gateway 504

Sem saber detalhes exatos sobre o site WordPress, como a configuração do servidor, plano de hospedagem, plug-ins de terceiros e o tráfego que atrai, você pode achar frustrante e opressor consertar um erro 504 Gateway Timeout.

Como muitas variáveis estão envolvidas, recomendo que você comece corrigindo os problemas do lado do cliente, que são muito raros, e depois passe a corrigir os problemas do lado do servidor, que geralmente são os culpados com erros 504.

Tente recarregar a página da web

Uma das primeiras coisas que você pode tentar ao encontrar um erro 504 Gateway Timeout é aguardar alguns minutos e tentar recarregar a página.

Você pode pressionar o F5 atalho de teclado para atualizar / recarregar a página da web na maioria dos navegadores. Para remover o da página cache do navegador antes de recarregar, você pode pressionar o CTRL + F5 combinação de atalhos.

Refreshing a webpage in Chrome browser

Atualizar uma página da web no navegador Chrome

Enquanto você faz isso, também pode tentar carregar o site em um navegador diferente para descartar isso como um problema. Como a maioria dos erros 504 ocorre devido a servidores temporariamente sobrecarregados, usar essa solução deve fazer com que seu site volte imediatamente.

Se esperar e recarregar o site não resolver o problema do erro 504, você pode verificar se um site está fora do ar para todos ou apenas para você. As duas excelentes ferramentas online para testar um site quanto ao tempo de inatividade são Caiu para todo mundo ou só para mim e Está desativado agora?

Testing Kinsta.com on Down for Everyone or Just Me

Testando Kinsta.com no Down for All or Just Me

Reinicialize seus dispositivos de rede

Às vezes, problemas com seus dispositivos de rede, como modem ou roteador, podem levar a um erro 504 Gateway Timeout. Reinicializar esses dispositivos pode ajudá-lo a corrigir o problema.

Embora você possa desligar todos esses dispositivos de rede em qualquer ordem, a ordem em que você os liga novamente é importante. Normalmente, ligue esses dispositivos de “fora para dentro”, seguindo a ordem de conexão do provedor de serviços de Internet para o dispositivo cliente principal.

Verifique suas configurações de proxy

Um servidor proxy fica entre o seu dispositivo e a Internet. É usado principalmente para aumentar a privacidade online, ocultando informações privadas (por exemplo, localização do dispositivo) de sites e servidores da web (por exemplo usando uma VPN).

Embora seja raro que os servidores proxy causem um erro 504, às vezes as configurações incorretas do servidor proxy podem ser o motivo. Você pode desativar o servidor proxy e tentar recarregar a página da web para ver se isso corrigirá o erro.

Changing the ‘Proxy’ settings in Windows 10

Alterar as configurações de 'Proxy' no Windows 10

A maioria dos clientes não usa um serviço de proxy, portanto, você pode pular esta etapa se tiver certeza de que não usa nenhum servidor proxy. No entanto, você pode ter definido sem você mesmo saber sobre isso. Eu sugiro que você verifique as configurações de proxy do seu dispositivo e navegador para descartar esta causa.

Problemas de DNS

Um erro 504 Gateway Timeout também pode ser causado por problemas de DNS no lado do servidor ou no lado do cliente (ou ambos).

O motivo mais provável para um problema de DNS do lado do servidor é o FQDN (nome de domínio totalmente qualificado) não resolver para o endereço IP correto. Normalmente, isso ocorre quando você acaba de migrar seu site WordPress para um novo servidor ou host. Portanto, é importante esperar que o domínio Registros DNS para propagação completa, o que pode levar até 24 horas.

Você pode usar ferramentas gratuitas como Verificador de DNS whatsmydns.net ou DNSMap para ver se seu DNS se propagou ao redor do globo.

Checking DNS propagation for your domain on whatsmydns.net

Verificando a propagação de DNS para seu domínio no whatsmydns.net

Para corrigir problemas de DNS do lado do cliente, você pode tentar liberando seu cache DNS local. É como limpar o cache do navegador, exceto que aqui você está limpando o cache DNS do sistema operacional.

Se você estiver usando o Windows, pode limpar o cache DNS abrindo o Prompt de Comando e inserindo a seguinte diretiva:

ipconfig / flushdns
Flushing the DNS Cache with Command Prompt

Esvaziando o cache DNS com prompt de comando no Windows

Você deve ver a mensagem “Limpe o cache do resolvedor de DNS com sucesso”. mensagem se funcionou.

Para as versões mais recentes do macOS, você pode abrir o Terminal e executar o seguinte comando:

sudo killall -HUP mDNSResponder

Você não verá nenhuma notificação no macOS quando o processo terminar, mas pode alterar isso anexando o comando à sua mensagem personalizada.

sudo killall -HUP mDNSResponder; Cache DNS foi limpo com sucesso

Se você estiver usando versões mais antigas do macOS, o comando que você precisa inserir varia de acordo com a versão do macOS que você está executando. Para obter mais detalhes, você pode consultar o Seção macOS no DNS de limpeza aprofundado do Kinsta tutorial.

Se você estiver usando o sistema operacional Linux, o processo é bastante semelhante ao macOS, pois até o Linux usa o Terminal como sua interface de linha de comando. Como existem muitas distribuições do Linux, o comando exato que você precisa para executar pode variar de uma distro para outra. Você pode verifique o guia de Kinsta Para maiores informações.

Finalmente, você pode alterar seus servidores DNS do lado do cliente temporariamente. Por padrão, seu ISP atribui os servidores DNS automaticamente a você. Mas você pode alterá-los para IPs DNS públicos temporariamente.

Alguns confiáveis que você pode experimentar são DNS público do Google, Cloudflare 1.1.1.1, DNS Quad9e Cisco OpenDNS.

Settings custom DNS servers in Windows 10

Configurações de servidores DNS personalizados no Windows 10

Desative o CDN do seu site temporariamente

Às vezes, o problema também pode ser com o seu rede de distribuição de conteúdo (CDN). Se o servidor de origem de um site não puder ser alcançado, a maioria dos CDNs tentará veicular a página da web completa a partir de seu cache.

Mas a maioria dos CDNs não habilita esse recurso por padrão, pois é complexo para armazenar ativos dinâmicos na maioria dos sites (por exemplo, o Painel de administração do WordPress).

Setting the ‘Cache Everything’ page rule in Cloudflare

Configurando a regra da página 'Cache Everything' no Cloudflare

Uma maneira direta de solucionar esse problema é desativar o CDN temporariamente. Por exemplo, se você estiver usando o Enabler CDN Plug-in do WordPress para vincular os ativos do seu site aos URLs do CDN, então você pode desativar o plug-in e testar o recarregamento do seu site.

O mesmo se aplica ao uso de qualquer outro plugin que você pode usar para se conectar ao seu CDN (por exemplo, WP Rocket, Breeze, Cache Total W3).

Se não conseguir acessar o painel de administração do seu site, você pode desativar o plug-in via SFTP renomeando o nome da pasta do plugin.

Disable all plugins via SFTP by renaming the plugins folder name

Desative todos os plug-ins via SFTP renomeando o nome da pasta de plug-ins

CDNs como Cloudflare ou Sucuri que fornecem serviços de proxy completos, têm firewalls extras entre seus servidores de borda e seu servidor de origem. Portanto, você pode encontrar erros HTTP 5xx com mais frequência ao usá-los. A maioria deles erros de cache 5xx retornados por seu servidor de origem, por isso é fácil solucioná-los.

O plano gratuito da Cloudflare está sujeito a gerar um erro 5xx. Infelizmente, como é um serviço proxy completo, não há uma maneira rápida de desativá-lo. Mas antes de culpar Cloudflare por isso, saiba que Cloudflare mostra duas variações do erro 504 Gateway Timeout.

504 Gateway Timeout em Cloudflare (Variação 1)

O Cloudflare mostrará uma tela de erro de tempo limite do gateway 504 personalizado quando o servidor de origem do seu site responder com uma resposta HTTP 504 padrão.

Cloudflare’s custom Error 504 screen

Tela de erro 504 personalizada da Cloudflare

Aqui, o problema está no seu servidor web e não no Cloudflare. Você pode tentar consertá-lo com as outras soluções mencionadas abaixo ou entrar em contato com o seu suporte do provedor de hospedagem para ajuda técnica.

504 Gateway Timeout em Cloudflare (Variação 2)

Se o Cloudflare causar o erro 504 Gateway Timeout, a tela de erro mencionará “cloudflare”, que atualmente é o nome do servidor padrão para todos os ativos do Cloudflare. Normalmente, a tela de erro aparecerá como abaixo:

504 Gateway Timeout error caused by Cloudflare

Tela de erro para 504 Gateway Timeout causado por Cloudflare

Já que o próprio Cloudflare não responde, você não verá nenhuma tela de erro da marca Cloudflare aqui.

Provavelmente, o Cloudflare já está ciente do problema e já está trabalhando em uma correção. Você pode confirmar isso verificando o Status do sistema Cloudflare página da Internet. Alternativamente, você pode entre em contato com o suporte da Cloudflare para uma resolução mais rápida.

Check Cloudflare System Status at cloudflarestatus.com

Verifique o status do sistema Cloudflare em cloudflarestatus.com

504 Gateway Timeout em Cloudflare devido a grandes uploads

o tamanho de seus uploads para seu site também pode ser um motivo para o tempo limite do servidor. Cloudflare limita o tamanho do arquivo de upload (por solicitação HTTP POST) para apenas 100 MB nos planos Grátis e Pro.

Cloudflare’s ‘Maximum Upload Size’ limits for various plans

Limites de 'Tamanho máximo de upload' da Cloudflare para vários planos

O problema pode estar no lado do seu host ou com o Cloudflare. Você pode descobrir a causa exata ignorando o Cloudflare com o seu Arquivo de hosts DNS e tentando fazer o upload novamente.

Se você estiver usando Cloudflare com WordPress, recomendo que use seu plugin grátis e excluir URLs críticos do armazenamento em cache (como o painel de administração do WordPress). Você pode consultar a postagem detalhada de Kinsta em como definir as configurações do Cloudflare para WordPress.

Leitura sugerida: Como configurar o Cloudflare APO para WordPress.

Problemas do servidor (verifique com seu host)

Os problemas do servidor são um dos motivos mais comuns para enfrentar um erro de 504 Gateway Timeout. Uma vez que a maioria dos sites WordPress são hospedados em Nginx ou Apache servidores web, isso significa que o Nginx ou o Apache está esperando por uma resposta de algo e está com o tempo esgotado.

Muitos clientes vêm ao Kinsta exatamente para esse problema que estão enfrentando em outros hosts WordPress. A conversa é mais ou menos assim:

Estamos recebendo cerca de 100 mil visitantes por mês com mais de 200 mil visualizações. Atualmente, estamos hospedando com ____ e encontramos erros 504 constantemente devido à sobrecarga do servidor. Não gostei da forma como ____ lidou com o problema, e também fomos informados de que teremos que mudar para seus planos dedicados em breve, o que acredito não ser necessário.

Tráfego intenso e sites de comércio eletrônico são mais propensos a obter erros 504 devido à sobrecarga do servidor, pois geram muitas solicitações não armazenáveis em cache. No entanto, esse problema pode aparecer em qualquer site, incluindo blogs. Muitos hosts solicitarão que você atualize para um plano de alto nível para corrigir o problema, o que na maioria dos casos é desnecessário.

Kinsta usa Hosts gerenciados LXD e contêineres de software LXC orquestrados para cada site. Assim, cada site WordPress está alojado em seu próprio contêiner isolado com acesso a todo o software necessário para executá-lo (Linux, Nginx, PHP, MySQL) Os recursos são 100% privados e não são compartilhados com nenhum outro site, nem mesmo seus sites.

A maioria dos hosts WordPress que oferecem planos de hospedagem compartilhada não tem esse recurso. Portanto, um site de alto tráfego hospedado no mesmo servidor que o seu pode fazer com que seu site exiba um erro 504 também.

Além de isolar cada site em seu contêiner, Kinsta também projetou sua infraestrutura para lidar facilmente com milhares de conexões simultâneas. Kinsta até hospeda os bancos de dados MySQL em localhost, não um servidor remoto. Isso significa que não há latência entre as máquinas, resultando em consultas mais rápidas e menos chances de ocorrência de tempos limite.

Muitos clientes que migrar para Kinsta ver enorme diminui no tempo geral de carregamento.

A 212.5% increase in performance after switching to C2.

Um aumento de 212,5% no desempenho após a mudança para C2.

Um servidor sobrecarregado não é a única causa para o tempo limite do servidor. Pode haver muitos outros motivos para o erro 504:

Infraestrutura de servidor lento

O servidor que você usa para hospedar seu site WordPress pode não ter recursos suficientes para lidar com a carga. É como jogar um videogame moderno com muitos gráficos em um PC com uma década.

O servidor simplesmente desliga tentando servir o site. A única solução para esse problema é fazer o upgrade para um servidor com melhor infraestrutura. Por esta razão, mesmo o plano de hospedagem WordPress mais básico do Kinsta irá lidar com um site estático com tráfego médio.

Precisa de mais funcionários PHP

Trabalhadores PHP são usados para executar o código em seu site WordPress. Um site de comércio eletrônico que recebe 50.000 visitantes por mês precisa de muito mais recursos do que um simples blog com a mesma quantidade de tráfego. Se todos os funcionários PHP do servidor estiverem ocupados, eles formarão uma fila.

Quando a fila fica muito grande, o servidor desconsidera as solicitações antigas, o que pode fazer com que o servidor exiba um erro 504 de gateway. Você pode perguntar ao seu host sobre como aumentar o número de trabalhadores PHP. Isso permitirá que seu site execute várias solicitações simultaneamente.

Problemas de firewall

O firewall do seu servidor pode ter alguns erros ou uma configuração inadequada. Talvez, algumas de suas regras impeçam o servidor de estabelecer uma conexão corretamente. Para saber se seu firewall é o culpado, você pode verificar o seu servidor logs de erro.

Problemas de conectividade de rede

Problemas de conectividade entre o servidor proxy e o servidor da web podem causar atrasos na resposta às solicitações HTTP. Se você usar um balanceador de carga, também pode haver problemas de conectividade de rede com ele.

Tempo limite de HTTP

Os tempos limite de HTTP podem ocorrer quando uma conexão entre o servidor da web e o cliente é mantida aberta por muito tempo. Com sites WordPress, isso geralmente acontece durante a execução Importações de WordPress. Uma maneira de resolver esse problema é mudar para uma conexão de Internet mais rápida.

Você também pode usar uma ferramenta com suporte para WP-CLI para executar os scripts diretamente no servidor, ignorando totalmente a conexão HTTP. Por exemplo, você pode usar o comando wp import WP-CLI para executar o plugin WordPress Importer diretamente por meio da interface de linha de comando.

Importante: 504 Erros de tempo limite de gateway são semelhantes a 503 Erros de serviço indisponível ou 502 Erros ruins de gateway. Mas são todos diferentes. Se você está tendo um erro 504 no Kinsta, abrir um tíquete de suporte para consertar seu problema imediatamente.

Para monitorar o tempo de inatividade do seu site por conta própria, você pode usar uma ferramenta como updown.io. Ele verificará o status do seu site (ou qualquer URL) periodicamente, enviando uma solicitação HTTP a ele. Você pode definir a frequência de verificação de 15 segundos a 1 hora. Se o seu site não estiver respondendo corretamente, ele irá notificá-lo por e-mail ou SMS.

Monitor your website with updown.io

Monitore seu site facilmente com updown.io

Você receberá uma quantidade generosa de créditos grátis com cada conta do updown.io, mas se estiver procurando por alternativas mais baratas, você pode verificar WebGazer ou UptimeRobot. Ambas as ferramentas o ajudarão a monitorar o tempo de atividade do seu site a cada 5 minutos, gratuitamente. Isso é decente o suficiente para a maioria dos proprietários de sites.

WebGazer website monitoring tool's dashboard

Painel da ferramenta de monitoramento de sites WebGazer

Monitorar seu site dará uma ideia de quantas vezes ele está fora do ar. Isso é especialmente útil se você estiver usando um provedor de hospedagem compartilhada. A maioria dos hosts WordPress gerenciados cuidam disso automaticamente para você, portanto, é sempre recomendável acompanhá-los.

Para obter uma explicação detalhada, verifique a postagem de Kinsta no importância da hospedagem gerenciada do WordPress.

Spam, Bots ou Ataques DDoS

Os invasores mal-intencionados podem rastrear seu servidor da Web enviando muitas solicitações ou enviando solicitações com muitos recursos. Se o seu site está recebendo spam de bots ou passando por um Ataque DDoS, ele pode sobrecarregar seu servidor e resultar em erros 504 de tempo limite do gateway para muitos usuários originais.

Você pode olhar para o tráfego do servidor e análises para ver se consegue detectar qualquer padrão irregular no tráfego do site. Se você estiver usando o Kinsta para hospedar seu site, poderá visualizar esses dados facilmente acessando seu Painel MyKinsta Analytics.

MyKinsta Analytics dashboard

Painel MyKinsta Analytics

Comece sua investigação observando os principais IPs do cliente. Isso lhe dará uma ideia de quem está gerando o número máximo de solicitações e de onde. Se o seu servidor de repente usar uma largura de banda enorme ou atrair muito tráfego, este relatório será muito útil.

Viewing ‘Top Client IPs’ in MyKinsta dashboard

Visualizando 'IPs de clientes principais' no painel MyKinsta

Em seguida, você pode verificar o Análise de Cache relatório. Aqui, você pode ver quantas solicitações estão ignorando ou perdendo o cache, ou sendo atendidas a partir do cache. Por motivos de desempenho e estabilidade, você deseja armazenar em cache o máximo de solicitações possível, mas nem sempre é possível fazer isso.

Por exemplo, Sites WooCommerce gerar muitas solicitações não armazenáveis em cache para recursos como o carrinho de compras e o processo de checkout.

The ‘Cache Analysis’ screen in MyKinsta

A tela de 'Análise de Cache' no MyKinsta

Finalmente, você pode usar um Plugin de segurança WordPress para reforçar a segurança do seu site, identificando e bloqueando tráfego / IPs preocupantes. Você pode pedir ao seu anfitrião para bloquear certos IPs também.

Lutando com o tempo de inatividade e problemas com o WordPress? Kinsta é a solução de hospedagem projetada com desempenho e segurança em mente! Confira nossos planos

Dependendo da duração e escala do ataque, este pode ser um processo interminável de lista negra de IPs, já que muitos invasores mudam seus IPs e endereços de proxy após serem bloqueados.

Nota: O Kinsta não permite que seus clientes instalem plug-ins de segurança do WordPress, pois eles podem ter um grande efeito no desempenho do site, especialmente em seus recursos de digitalização. Como Kinsta usa balanceadores de carga com Google Cloud Platform, o bloqueio de IPs nem sempre funcionaria conforme o esperado.

Você pode usar soluções de segurança dedicadas, como Cloudflare ou Sucuri, para proteger seus sites de ataques DDoS e bots de spam. Para mais informações, você pode verificar os artigos de Kinsta sobre como instalar o Cloudflare em seu site WordPress e como Sucuri ajudou a impedir um ataque DDoS em suas trilhas.

Banco de dados WordPress corrompido

Às vezes, um erro de 504 de tempo limite do gateway pode ser devido a um base de dados, especialmente em sites WordPress. Normalmente, isso ocorre devido a arquivos ou tabelas de banco de dados corrompidos. Às vezes, também pode ser causado por um sério problema de segurança, como seu site ou banco de dados sendo invadido.

Reparar um banco de dados WordPress corrompido depende do problema. Plugins como WP-DBManager torna mais fácil diagnosticar problemas de banco de dados e repará-los. Eu recomendo que você leia o passo a passo detalhado de Kinsta sobre reparar problemas de banco de dados WordPress para começar.

Verifique os plug-ins e temas do seu site

Na maioria dos casos, plug-ins e temas de terceiros não causam erros 504. Mas há uma pequena chance de que eles possam causar tempos limite do servidor, geralmente ao enfileirar várias solicitações não armazenadas em cache geradas pelo plugin / tema. Como isso prende muitos trabalhadores PHP do seu servidor, pode causar 504 erros.

Um ótimo exemplo desse problema é WooCommerce, que é um plugin instalado para adicionar funcionalidade de comércio eletrônico a sites WordPress.

A maneira mais simples de solucionar este problema é por desativando todos os seus plugins. Lembre-se de que você não perderá nenhum dado se apenas desativar um plugin.

Se você pode acessar seu painel de administração, você pode ir para Plugins tela, selecione Desativar no menu de ações em massa, marque todos os plug-ins e, em seguida, clique no Aplique botão. Isso desativará todos os seus plug-ins.

Deactivate plugins in WordPress

Desativando todos os plug-ins do WordPress através do painel de administração do WP

Se vocês não pode acessar sua área de administração, então você pode desativar os plug-ins via SFTP usando o método descrito antes. Basta renomear o nome da pasta principal do plug-in para desabilitar todos os plug-ins em massa.

Depois de desativar todos os plug-ins, verifique se o seu site carrega corretamente. Se funcionar, você deve ativar cada plugin um por um, testando o site depois de habilitar cada plugin.

Por fim, certifique-se de que seus plug-ins, temas e o núcleo do WordPress estejam atualizados. Além disso, certifique-se de que seu servidor está executando o versão recomendada de PHP.

Se você acha que isso é muito difícil, você sempre pode pedir ajuda ao seu anfitrião. Kinsta usa New Relic e outras técnicas de solução de problemas para ajudar os clientes restringir qual plugin, consulta ou script pode causar o erro.

No pior dos cenários, como uma consulta ineficiente ou código incorreto em um plugin / tema, você pode trazer um Desenvolvedor WordPress para corrigir o problema.

Verificar registros de erros

Vendo logs de erro pode ser muito útil ao solucionar problemas e depurar erros 504 em seu site WordPress. Isso pode ajudá-lo a restringir um problema em seu site rapidamente, especialmente se for resultado de um plug-in exigente em seu site.

Se você é um cliente Kinsta, pode ver facilmente os erros no visualizador de log em seu painel MyKinsta.

Checking error logs inside MyKinsta dashboard

Verificar registros de erros dentro do painel MyKinsta

Se o seu host não tiver uma ferramenta de registro, você pode ativar o modo de depuração do WordPress adicionando o seguinte código ao seu wp-config.php file:

define ('WP_DEBUG', verdadeiro); define ('WP_DEBUG_LOG', verdadeiro); define ('WP_DEBUG_DISPLAY', falso);

o Constante WP_DEBUG ativa ou desativa o modo de depuração do WordPress. Ele tem duas constantes complementares opcionais que podem estender seus recursos. o WP_DEBUG_LOG constante direciona todos os erros a serem salvos em um debug.log arquivo dentro do / wp-content / diretório. Se você não encontrar esse arquivo, poderá criar um.

o WP_DEBUG_DISPLAY constante controla se os logs de depuração são exibidos na página HTML. Definir como falso ocultará todos os erros, mas você pode revisar os erros mais tarde, pois também definiu WP_DEBUG_LOG como verdade.

Importante: Se você tem WP_DEBUG habilitado no ambiente Kinsta, ele encaminha todos os erros para o debug.log arquivo e não o error.log no painel do MyKinsta.

Você também pode baixar os arquivos brutos de log de erros do WordPress via SFTP. Normalmente, você pode encontrar logs de erros no diretório raiz do seu servidor em uma pasta chamada “logs”.

Accessing the WordPress error logs folder via SFTP

Acessando a pasta de logs de erros do WordPress via SFTP

Os usuários do Kinsta também podem ativar o modo de depuração do WordPress a partir do painel MyKinsta. Para fazer isso, navegue até Sites> Ferramentas> Depuração do WordPress e clique no Habilitar botão. Isso permitirá que você veja os erros e avisos do PHP sem ter que habilitar o modo de depuração via SSH ou SFTP.

Por último, você pode verificar os arquivos de log do servidor. Dependendo de qual servidor você está usando para hospedar seu site WordPress, eles são comumente encontrados nestes locais:

  • Apache:/var/log/apache2/error.log/
  • Nginx:/var/log/nginx/error.log/

Você pode consultar a documentação relacionada ao registro de Apache ou Nginx Para maiores informações.

Defina as configurações do Apache ou Nginx corretamente

Você pode editar os arquivos de configuração do servidor para aumentar os limites de recursos para diretivas específicas. Isso pode ajudá-lo a resolver o erro 504 Gateway Timeout.

Para servidores da web Apache

Primeiro, adicione o seguinte código ao seu httpd.conf:

TimeOut 600

Esta configuração define quanto tempo o servidor aguardará por certas solicitações antes de marcá-las como um problema de tempo limite de rede. Está o valor padrão é 60 segundos (Versão 2.4 do Apache).

Você só pode adicionar esta diretiva em seu httpd.conf arquivo, não em seu .htaccess Arquivo. Uma vez que a maioria dos provedores de hospedagem compartilhada não permite que você modifique o httpd.conf arquivo, você pode tentar aumentar o valor do Diretiva LimitRequestBody na tua .htaccess arquivo em vez disso.

Em seguida, adicione a seguinte linha ao seu php.ini file:

max_execution_time 300

O valor padrão do PHP diretiva max_execution_time é de 30 segundos. Aumentá-lo permitirá que os scripts PHP do seu site sejam executados por mais tempo.

Para servidores da web Nginx

Se você estiver executando seus sites WordPress em Nginx + FastCGI Process Manager (PHP-FPM) ou usando Nginx como proxy reverso para Apache, você pode ajustar as configurações do servidor para ajudar a evitar erros de 504 Gateway Timeout.

504 Erro de tempo limite do gateway em Nginx + FastCGI (PHP-FPM)

Primeiro, você deve editar seu arquivo de configuração do pool PHP-FPM. Você pode encontrá-lo no /etc/php7.4/fpm/pool.d/www.conf localização em seu servidor Nginx (o caminho exato pode variar de acordo com Versão PHP) Como alternativa, você pode executar o seguinte comando em seu terminal para editar o arquivo de configuração do pool PHP-FPM:

sudo nano /etc/php/7.2/fpm/pool.d/www.conf

Em seguida, defina a seguinte diretiva:

request_terminate_timeout = 300

Depois disso, você deve editar seu php.ini Arquivo. Você pode localizá-lo em /etc/php.ini. Abra o arquivo e adicione / altere o valor para o max_execution_time diretiva para 300 segundos.

max_execution_time = 300

Finalmente, adicione o seguinte código ao seu nginx.conf bloco de localização do arquivo:

localização ~ .php$ {... fastcgi_read_timeout 300; }

Recarregue o Nginx e o PHP-FPM para que as alterações tenham efeito.

sudo service nginx reload sudo service php7.4-fpm reload

O código exato para recarregar o PHP-FPM irá variar com base na versão do PHP instalada em seu servidor. Teste seu site para ver se ele corrigiu o problema.

504 Erro de tempo limite do gateway no proxy Nginx

Se você estiver usando o Nginx como um servidor proxy reverso para o Apache, poderá torná-lo mais tolerante com relação ao tempo limite do servidor, adicionando as seguintes diretivas ao seu nginx.conf file:

proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; send_timeout 600;

Não se esqueça de recarregar o Nginx após fazer suas alterações.

sudo service nginx reload

Outros erros de HTTP, como tempo limite do gateway 504

Conforme mencionado anteriormente neste artigo, existem muitos outros erros HTTP 5xx que são semelhantes ao erro 504 Gateway Timeout. É por causa do fato de que tudo acontece no lado do servidor. Esses erros incluem:

Outros erros de HTTP causados devido a problemas do lado do cliente, como o 404 não encontrado erro, também são como o erro 504. Você pode consultar os detalhes de Kinsta guia e lista de códigos de status HTTP Para maiores informações.

Resumo

Seu Site WordPress pode ser afetado pelo erro 504 Gateway Timeout devido a vários motivos. Neste artigo, você aprendeu como solucionar todos eles. Normalmente, esses erros são causados por problemas do lado do servidor; nesse caso, você pode entrar em contato com seu host e resolvê-lo rapidamente.

No entanto, você também deve entender que esse erro pode ser causado por plug-ins, temas, serviços de terceiros, consultas ineficientes de banco de dados ou uma combinação de dois ou mais deles. Se você estiver maximizando os recursos do seu servidor (por exemplo, funcionários PHP), é recomendado otimize seu site para desempenho.

Se você ainda achar que seu site está expirando, pode muito bem ser que precise atualizar seu plano de hospedagem ou o número de funcionários PHP. Recomendo que você considere essa opção apenas depois de esgotar todas as outras soluções descritas neste artigo.

De sites estáticos simples a sites complexos comércio eletrônico e sites de membros, Os planos de hospedagem da Kinsta são projetados para acomodar todos os tipos de sites. Mesmo que seu site use mais recursos de servidor do que o que seu plano de hospedagem oferece, Recurso de dimensionamento automático do Kinsta significa que seu site estará sempre online.

Perdemos alguma coisa? Se você ainda está achando difícil corrigir o erro 504 Gateway Timeout em seu site WordPress, deixe um comentário abaixo.