Um site está fora do ar ou é só com você? Como verificar, passo a passo
Quando um site não abre, a primeira pergunta é se ele está fora do ar para todos ou só para você. A segunda é onde ele falha. Entre digitar um nome e ver uma página, o navegador passa por quatro camadas: o registro do domínio, o DNS, a conexão com o endereço IP do servidor e o servidor web. Cada uma falha de um jeito e mostra um erro próprio, então verificá-las em ordem costuma revelar a causa em poucos minutos.
De um nome a uma página
- O domínio está registrado. Um registro — a entidade que administra uma extensão, como a do .com ou a do .pt — guarda o nome, o registrador dele e quais servidores de nomes respondem por ele.
- O DNS transforma o nome em um endereço. O seu dispositivo pergunta a um resolvedor DNS, que encontra os servidores de nomes do domínio e obtém o endereço IPv4 dele (um registro A) ou o endereço IPv6 (um registro AAAA).
- O navegador se conecta a esse endereço. Ele abre uma conexão com o servidor e, no caso do https, verifica o certificado de segurança do servidor.
- O servidor web responde. Ele devolve a página com um código de status HTTP de três dígitos: 200 quando está tudo bem, ou um erro como 404 ou 503.
O seu próprio dispositivo fica na frente das quatro: o cache DNS dele, a rede, uma VPN ou uma extensão do navegador podem interromper o caminho mesmo quando todas as camadas do lado do site estão funcionando.
Qual camada está falhando
| Camada | O que dá errado | O que você costuma ver no Chrome |
|---|---|---|
Registro do domínio | O domínio expirou, foi suspenso pelo registro ou pelo registrador, ou foi excluído | DNS_PROBE_FINISHED_NXDOMAIN, ou uma página do registrador dizendo que o domínio expirou |
DNS | O nome não tem registro, não tem endereço ou os servidores de nomes dele não respondem | DNS_PROBE_FINISHED_NXDOMAIN ou ERR_NAME_NOT_RESOLVED |
Endereço IP e conexão | O servidor está desligado, um firewall descarta o tráfego ou o caminho de rede está interrompido | ERR_CONNECTION_TIMED_OUT ou ERR_CONNECTION_REFUSED |
Certificado de segurança | O certificado expirou ou não corresponde ao nome | NET::ERR_CERT_DATE_INVALID ou NET::ERR_CERT_COMMON_NAME_INVALID |
Servidor web | O servidor está funcionando, mas não consegue servir páginas | Uma página de erro com um código como 500, 502 ou 503, ou ERR_TOO_MANY_REDIRECTS |
Passo 1: verifique de outro lugar
Comece verificando o site de fora da sua própria conexão. Se ele também estiver fora do ar lá, está fora do ar para todos e a falha é do lado do site. Se funcionar lá, mas não para você, o problema está em algum ponto entre o seu dispositivo e o site, e os passos mais abaixo são os que você deve tentar.
O nosso verificador de status faz isso a partir de um data center da Cloudflare e de sondas em seis regiões do mundo, e analisa o domínio, o DNS e o servidor web de uma só vez. Você também pode tentar no celular, com os dados móveis em vez do Wi-Fi: ele usa uma rede diferente e, normalmente, servidores DNS diferentes.
Passo 2: o registro do domínio
Um domínio é alugado, não comprado, e quando não é renovado o site desaparece, mesmo com o servidor funcionando bem. Os dados públicos de registro, disponíveis pelo RDAP (o sucessor do WHOIS), mostram a data de expiração e os códigos de status do domínio.
Alguns códigos de status tiram o domínio do DNS. Com clientHold, definido pelo registrador, ou serverHold, definido pelo registro, o domínio não é publicado no DNS e não resolve. O mesmo acontece com inactive, que significa que não há servidores de nomes configurados. Status como clientTransferProhibited são travas normais contra transferências indesejadas e não afetam o site.
Para domínios genéricos como .com, .org ou .net, a Expired Registration Recovery Policy (Política de Recuperação de Registros Expirados) da ICANN define o que acontece depois da expiração. O registrador precisa interromper o DNS do domínio durante pelo menos os últimos oito dias consecutivos em que o titular ainda pode renová-lo, e qualquer página que ele mostre no lugar precisa dizer claramente que o domínio expirou e como renová-lo. Se o domínio for então excluído, ele entra em um Redemption Grace Period (período de carência para resgate) de 30 dias com o DNS desativado, seguido de 5 dias em pendingDelete, depois dos quais qualquer pessoa pode registrá-lo. Domínios de código de país, como .pt, .br ou .de, seguem as regras do próprio registro.
Passo 3: o DNS
Se o domínio estiver ativo, verifique se o nome resolve. Uma resposta NXDOMAIN significa que o nome simplesmente não existe no DNS. Uma resposta sem registro A ou AAAA significa que o nome existe, mas não aponta para nenhum endereço, o que normalmente é um erro de configuração, por exemplo depois de uma mudança para uma nova hospedagem.
As respostas DNS ficam em cache pelo tempo que o TTL do registro determinar. É por isso que uma mudança pode levar minutos ou horas para chegar a todos, e por isso que, nesse intervalo, um site pode funcionar para uma pessoa e falhar para outra. As respostas negativas também ficam em cache: se o seu resolvedor recebeu a resposta de que o nome não existia, ele pode continuar repetindo isso por algum tempo depois que o problema for corrigido.
No seu próprio dispositivo, você pode limpar o cache DNS: no Windows, com ipconfig /flushdns; no macOS, com sudo killall -HUP mDNSResponder. O Chrome também mantém um cache próprio, que você pode limpar em chrome://net-internals/#dns. Trocar para outro resolvedor público, como 1.1.1.1 ou 8.8.8.8, é um jeito rápido de descartar o DNS do seu provedor como causa.
Passo 4: o endereço IP e a conexão
Com um endereço em mãos, o navegador precisa alcançá-lo. Uma conexão que esgota o tempo limite normalmente significa que o servidor está desligado, sobrecarregado ou atrás de um firewall que descarta o tráfego. Uma conexão recusada significa que algo respondeu nesse endereço, mas nenhum servidor web está escutando.
Muitos sites têm um endereço IPv4 e um IPv6. Os navegadores tentam os dois e usam o que conectar primeiro, então uma configuração IPv6 com defeito de um dos lados muitas vezes passa despercebida, mas nem sempre: um site pode funcionar em uma rede e falhar em outra porque só um dos dois caminhos está com defeito.
Alguns bloqueios dependem de onde você está. Um site pode recusar visitantes de certos países, um provedor pode bloquear um site por força de lei e a rede de uma empresa pode filtrá-lo. Tentar outra rede, ou comparar com uma verificação feita de outro lugar, separa esses casos de uma queda real.
Passo 5: o servidor web
Quando a conexão funciona, o código de status HTTP do servidor diz o que aconteceu. Os códigos de 200 a 299 significam sucesso, e os de 300 a 399, um redirecionamento. Os códigos de 400 a 499 significam que o servidor está no ar, mas recusou ou não encontrou o que foi pedido, e os de 500 a 599 significam que o próprio servidor tem um problema. Sites atrás da Cloudflare também podem mostrar códigos próprios da Cloudflare, como 521 ou 522, quando o servidor por trás dela não responde.
O próximo guia desta série explica os códigos mais comuns, um a um, com o que cada um significa para quem visita e para o dono do site.
Quando um site que funciona parece fora do ar
Os verificadores automáticos, inclusive o nosso, nem sempre veem o que uma pessoa vê. Estes casos fazem um site que funciona parecer fora do ar para um verificador, ou fora do ar só para algumas pessoas:
- Verificações anti-bot. Serviços como a Cloudflare podem pedir que o visitante prove que é humano. Um navegador passa, uma verificação automática não, então o verificador vê uma página de desafio em vez do site.
- Bloqueios a data centers e limites de requisições. Alguns firewalls recusam requisições vindas de redes em nuvem, onde os verificadores rodam, ou respondem 429 quando chegam requisições demais.
- Bloqueios por país ou por rede. Um site pode recusar algumas regiões, e um provedor ou a rede de uma empresa pode filtrá-lo.
- Uma resposta DNS antiga. Depois que um site muda para um novo servidor, os dispositivos que guardaram o endereço antigo em cache continuam tentando usá-lo até o TTL acabar.
- O seu próprio dispositivo. Uma VPN, um firewall, um bloqueador de anúncios ou outra extensão, uma entrada no arquivo hosts ou um relógio com a data errada, que faz certificados válidos parecerem expirados.
O contrário também acontece: um site pode parecer no ar sem estar. Uma rede de distribuição de conteúdo pode continuar servindo páginas em cache enquanto o servidor por trás dela está fora do ar, e um domínio expirado pode mostrar uma página de estacionamento do registrador que responde normalmente. É por isso que o nosso verificador mostra o título da página junto com o resultado: “Domínio expirado” ou “Em manutenção” com um código 200 não é o site de verdade.
Se o site for seu
- Verifique o domínio: se está renovado, se não tem nenhum status de hold e se aponta para os servidores de nomes certos.
- Verifique o DNS: se os registros A e AAAA contêm os endereços atuais do seu servidor. Se você os alterou recentemente, leve em conta o TTL.
- Confira a página de status do seu provedor de hospedagem e se o servidor e o serviço web estão funcionando.
- Confira a data de expiração do certificado e se ele cobre todos os nomes que você usa, com e sem www.
- Leia o log de erros do servidor no horário da falha: os códigos 5xx quase sempre deixam rastro lá.
Perguntas frequentes
Como saber se um site está fora do ar para todos?
Verifique o site a partir de outra rede ou com um verificador de status na internet. Se ele também falhar lá, está fora do ar para todos. Se funcionar lá, o problema está do seu lado: o cache DNS, a rede, a VPN ou o navegador.
Por que um site funciona no meu celular, mas não no meu computador?
Nos dados móveis, o celular usa outra rede e normalmente outros servidores DNS. O computador pode ter uma resposta DNS antiga em cache, um resolvedor diferente ou uma VPN, um firewall ou uma extensão atrapalhando.
Quanto tempo leva para uma mudança no DNS chegar a todos?
Até o TTL do registro antigo, que muitas vezes fica entre alguns minutos e um dia. Os resolvedores que guardaram a resposta antiga em cache continuam a usá-la até ela expirar.
Um domínio expirado para de funcionar na hora?
Nem sempre. Para domínios genéricos, o registrador precisa interromper o DNS durante pelo menos os últimos oito dias em que o domínio ainda pode ser renovado, mas o dia exato depende do registrador. Depois que um domínio é excluído, ele deixa de resolver durante os 30 dias do período de carência para resgate.
Próximo da série Códigos de status HTTP e erros da Cloudflare: o que significam 403, 404, 429, 500, 503 e 521 →
Referências
- ICANN — EPP Status Codes: What Do They Mean, and Why Should I Know?
- ICANN — Expired Registration Recovery Policy
- ICANN — FAQs for Registrants: Domain Name Renewals and Expiration
- RFC 2308 — Negative Caching of DNS Queries (DNS NCACHE) (March 1998)
- RFC 9083 — JSON Responses for the Registration Data Access Protocol (RDAP) (June 2021)
Guias relacionados
- Endereços IP explicados: IPv4, IPv6 e as faixas reservadas
- Sub-redes e CIDR explicados: prefixos, máscaras e hosts utilizáveis
- Registros DNS explicados: A, AAAA, CNAME, MX, TXT e NS
- Códigos de status HTTP e erros da Cloudflare: o que significam 403, 404, 429, 500, 503 e 521
- Timestamps Unix e fusos horários explicados
- Contagem de datas: dias entre datas, anos bissextos e semanas ISO
- Formatos de imagem explicados: JPEG, PNG, WebP, AVIF e HEIC
- Força de senhas explicada: comprimento, entropia e frases-senha
- UUIDs explicados: v4, v7 e como escolher a versão certa
- QR codes explicados: capacidade, correção de erros e tamanho de impressão
- Porcentagens e IVA explicados: somar, tirar e acumular
- Erros comuns em JSON e como corrigi-los
- Edição de PDFs no navegador: o que se mantém ao juntar, dividir e converter