Skip to content

Código de status HTTP · Não oficial, usado por Cloudflare

Erro 522 Connection Timed Out

O erro 522 significa que a Cloudflare estourou o tempo tentando conectar no seu servidor de origem: os pacotes TCP ficaram sem resposta. A causa mais comum, segundo a Cloudflare, é um firewall ou hospedagem que descarta em silêncio ou limita os IPs da Cloudflare.

Dados sobre este código de status
Classe4xx/5xx, Códigos não oficiais (nginx, Cloudflare)
Definido emCloudflare docs: Error 522
Pode ir para o cache por padrãoSó com Cache-Control ou Expires explícitos; os TTLs padrão da borda da Cloudflare só cobrem 200, 206, 301, 302, 303, 404 e 410, então um 52x não fica em cache por padrão
Pode repetir o pedidoSim, com espera crescente; se persistir, corrija o firewall ou a carga da origem
Cabeçalhos relevantes
  • CF-RAY: termina com o código do data center da Cloudflare que estourou o tempo, por exemplo -GRU

O que significa o 522

A Cloudflare documenta dois timeouts por trás do 522. Antes de existir conexão, ela envia um SYN e espera 19 segundos por um SYN+ACK, repetindo após 1, 1, 1, 1, 1, 2, 4 e 8 segundos. Depois que a conexão existe, ela espera até 90 segundos a origem confirmar o recebimento do pedido.

O silêncio é a marca registrada. Um servidor parado mas alcançável responde com reset (521); um firewall que descarta pacotes, um IP de origem que não é mais seu ou uma máquina sobrecarregada demais para aceitar conexões simplesmente deixa o SYN sem resposta.

Outras causas documentadas: keepalive desligado na origem, registro A no DNS da Cloudflare ainda apontando para o IP antigo depois de uma migração, e um Worker em Custom Domain chamando fetch() no próprio hostname.

Causas comuns

Se você está visitando o site

  • O servidor de origem do site está sobrecarregado ou inalcançável pela Cloudflare. A página de erro mostra a Cloudflare funcionando e o host com erro.

Se você administra o servidor

  • Regras de firewall (DROP no iptables, security groups na nuvem, filtros anti-DDoS da hospedagem) que não incluem todas as faixas da Cloudflare.
  • O IP da origem no DNS da Cloudflare está desatualizado depois de uma migração ou troca de IP dinâmico.
  • O servidor está saturado: fila de accept cheia, workers esgotados ou um SYN flood.
  • Keepalive desligado na origem, que a Cloudflare lista como causa.

Como resolver

Se você está visitando o site

  • Tente de novo em alguns minutos. Se só esse site falha, o problema é dele, não da sua conexão.

Se você administra o servidor

  • Compare os registros A e AAAA do DNS da Cloudflare com o IP que a hospedagem atribui hoje.
  • Teste uma conexão TCP pura com a origem de fora (nc -vz IP_DA_ORIGEM 443) e veja se os contadores do firewall mostram pacotes descartados.
  • Libere todas as faixas IPv4 e IPv6 de cloudflare.com/ips no firewall do host, no security group da nuvem e em qualquer proteção da hospedagem.
  • Se o servidor está sobrecarregado, aumente limites de workers ou capacidade, e acompanhe carga e número de conexões durante os erros.
  • Mande para a hospedagem o que a Cloudflare pede: horário com fuso, URL, Ray ID e um MTR da origem para um IP da Cloudflare.

Como diagnosticar o 522

Quem gera este código é a Cloudflare, na borda, quando não consegue uma resposta utilizável da sua origem; o seu servidor nunca o envia. Os comandos abaixo falam direto com a origem, sem passar pela Cloudflare, para você ver o que ela vê.

Terminal
# Does the origin complete a TCP handshake within 19 seconds?
nc -vz -w 19 ORIGIN_IP 443

# Full request to the origin, bypassing Cloudflare
curl -sv -o /dev/null --connect-timeout 19 --resolve example.com:443:ORIGIN_IP https://example.com/

# Path from the origin toward a Cloudflare IP (share with your host)
mtr -rwc 50 CLOUDFLARE_IP

Costuma ser confundido com

522 vs 504
Um 504 vem de um gateway que conectou no upstream mas não recebeu resposta a tempo; um 522 significa que a Cloudflare nem conseguiu completar a conexão com a origem.
522 vs 524
O 522 falha na etapa de conexão; no 524 a conexão e o pedido passaram, e a origem demorou demais para responder.
522 vs 521
O 521 é uma recusa rápida e explícita; o 522 é uma falha lenta, sem resposta nenhuma.

Perguntas frequentes

Quanto tempo a Cloudflare espera antes de mostrar 522?
A documentação fala em 19 segundos sem SYN+ACK antes de a conexão existir, ou 90 segundos sem confirmação do pedido depois que ela foi estabelecida.
Por que o erro 522 vai e volta?
Um 522 intermitente costuma ser carga ou limitação: a origem aceita conexões até a fila encher, ou um firewall começa a limitar os IPs da Cloudflare mais movimentados. Cruze os erros com os picos de tráfego.
DNS errado pode causar o erro 522?
Pode. Se o registro A na Cloudflare aponta para um IP que não é mais seu, os pacotes vão para uma máquina que os ignora e a Cloudflare estoura o tempo. Essa é uma das causas comuns listadas pela própria Cloudflare.
Um Worker da Cloudflare pode dar erro 522?
Um Worker em Custom Domain que faz fetch no próprio hostname recebe 522. Use uma Route, chame outro hostname ou ative a flag de compatibilidade global_fetch_strictly_public.

Revisado em por Arielton Oberek.