403 Proibido
O que é um erro HTTP 403, como o Google o trata (bloqueado — semelhante a um noindex), as causas comuns (controles de acesso, bloqueio de bots, permissões mal configuradas) e como corrigir 403s para SEO.
Idiomas
1 sinal de evidência nesta página
- Ferramenta relacionada ativaHTTP Status & Redirect Checker
Um 403 Forbidden significa que o servidor entendeu a solicitação, mas a recusou — o acesso foi negado, e essa recusa não precisa ter relação alguma com credenciais (o servidor pode até enviar um 404 para ocultar que um recurso proibido existe). Não é um 404 (“não há nada aqui”) nem um 401 (“autentique-se primeiro”); um 403 é um “você não pode ter isto” ativo. Para SEO, um 403 persistente em uma página que você quer pública a mantém fora do índice do Google — um resultado semelhante a um noindex, mas com mecanismo diferente, pois o Google não consegue ler o conteúdo de uma resposta 4xx. Como o Googlebot nunca envia credenciais, um 403 servido a ele merece investigação, em vez de ser considerado intencional — causas comuns incluem filtro de bots de CDN/WAF, bloqueio de IP/user-agent no servidor, plugin de segurança ou erro de .htaccess/permissões, embora não haja dados confiáveis sobre qual é mais frequente. Nunca use 403 para limitar o rastreamento (use 429/503 por uma janela curta). E verifique a intenção primeiro: alguns 403 (staging, administração, conteúdo protegido) estão corretos e não precisam ser corrigidos. Observe a inversão: um 403 no próprio robots.txt é tratado de forma permissiva, enquanto um 403 em uma página é um bloqueio rígido.
TL;DR — Um 403 Forbidden significa que o servidor entendeu a solicitação, mas está recusando-a — quem pediu não tem permissão. É diferente de 404 (“nada aqui”) e de 401 (“faça login primeiro”). Para SEO, uma página que continua retornando 403 ao Googlebot não será indexada e, se já estava indexada, cairá do índice — portanto, se é uma página que você quer que seja encontrada, o 403 é um problema a corrigir.
O que um 403 realmente significa
Se você é um visitante que acabou de encontrar um 403 em um site que não administra: trata-se de uma regra do servidor, não de algo no seu navegador. Tente outra rede ou dispositivo, confirme que não está em uma VPN bloqueada pelo site e limpe os cookies — mas, se persistir, a correção é responsabilidade do proprietário do site, e o restante deste artigo é para ele.
Quando você (ou um bot de mecanismo de busca) solicita uma página, o servidor devolve um código de status. 200 significa “aqui está”. Um 403 Forbidden significa “entendi o que você pediu e estou me recusando a entregá-lo”. A recusa não precisa estar relacionada a credenciais — o servidor também pode recusar por outros motivos e pode até enviar 404 se quiser ocultar que um recurso proibido existe. Evidence for this claim A 403 response means the server understood the request but refuses to fulfill it, and authenticating does not necessarily make a difference. Scope: RFC 9110 defines the protocol semantics; it does not identify the application, firewall, or policy responsible for a specific response. Confidence: high · Verified: IETF: RFC 9110 §15.5.4 — 403 Forbidden
A forma mais fácil de distinguir os códigos 4xx:
- 404 Not Found — “Não há nada aqui.” A página não existe.
- 403 Forbidden — “Há algo aqui, mas você não pode ter acesso.” Um bloqueio ativo.
- 401 Unauthorized — “Você precisa fazer login/autenticar primeiro.” (403 é mais forte: mesmo fazer login não ajudaria.)
Portanto, um 403 não significa que o servidor está quebrado. Significa que ele está funcionando exatamente como foi instruído — a pergunta é se recebeu a instrução certa.
Por que isso importa para SEO
O Googlebot precisa conseguir buscar uma página para indexá-la. Se pede sua página e recebe um 403, não consegue ler nenhum conteúdo dessa resposta — ela é recusada antes disso. O Google não indexa uma página que retorna 403, e uma página que estava indexada acabará saindo dos resultados se continuar retornando o código. O resultado final se parece muito com adicionar noindex — a página desaparece do Google —, mas o mecanismo é diferente: uma tag noindex precisa ser buscada e lida para funcionar, enquanto um 403 impede o Google de ler qualquer coisa. Evidence for this claim Google does not index 4xx URLs and removes already-indexed 4xx URLs over time. Scope: Google's crawler documentation supports the indexing outcome for persistent 403 responses, not the article's analogy to noindex. Confidence: high · Verified: Google: How HTTP status codes affect Google's crawlers
Eis a reviravolta que torna os 403 importantes: o Googlebot nunca faz login. Ele não envia senhas ou credenciais. Assim, um 403 — que muitas vezes significa “suas credenciais não foram aceitas” — não pode significar isso, especificamente, para o Googlebot. Isso não quer dizer automaticamente que seja um erro: o bloqueio ainda pode ser intencional (site de staging, área administrativa ou conteúdo protegido que você nunca quis rastrear). O que significa é que um 403 em uma página que você quer tornar pública merece investigação — alguma regra de segurança, firewall ou plugin pode ter decidido que o Googlebot parecia suspeito. A orientação do próprio Google tem o mesmo escopo: se você quer a página indexada, permita a passagem do Googlebot sem exigir autenticação.
O que geralmente causa isso
Não tenho dados concretos sobre qual causa é mais comum — trate isto como uma lista de verificação, não como uma classificação:
- CDN ou firewall (WAF) bloqueando o bot — o Bot Fight Mode da Cloudflare é um infrator frequente, capturando o Googlebot junto com bots maliciosos.
- Regra do servidor ou hospedagem bloqueando determinados endereços IP ou user agents.
- **Arquivo
robots.txtou.htaccessmal configurado. - Plugin de segurança (como o Wordfence no WordPress) agressivo demais.
- Barreira de login — qualquer coisa protegida por autenticação retorna 403 ao bot por projeto, e muitas vezes isso é intencional, não um bug.
- Erros de permissão de arquivo no servidor.
O caminho rápido para corrigir
- No Google Search Console, abra o relatório Page Indexing e procure “Blocked due to access forbidden (403).” (tradução) «Bloqueado devido ao acesso proibido (403).»
- Execute a URL pela ferramenta URL Inspection e clique em Test Live URL para ver o que o Googlebot recebe agora.
- Se usa Cloudflare ou outra CDN/firewall, verifique os logs de segurança em busca de bloqueios ao Googlebot e permita a passagem de bots de busca verificados.
- Depois de corrigir a regra, use Validate Fix no Search Console.
E uma coisa que você não deve fazer: nunca use 403 para tentar desacelerar o Googlebot. Não funciona e pode tirar suas páginas do índice. Se um bot está sobrecarregando seu servidor, é para isso que servem 429 e 503.
Quer a versão aprofundada — diagnóstico de Cloudflare/WAF, a armadilha do 403 em robots.txt e a forma correta de permitir bots? Mude para a aba Avançado.
TL;DR — Um 403 significa que o servidor entendeu a solicitação e a recusou por motivo de acesso — diferente de 404 (ausente) e 401 (autenticar). Para indexação, o resultado se parece com um
noindex: o Google não indexa uma URL 403 e remove uma que já estava indexada, embora o mecanismo (bloqueio no servidor/CDN/WAF) não tenha nada a ver com uma meta tag. Como o Googlebot nunca envia credenciais, um 403 ao Googlebot é quase sempre uma configuração incorreta — geralmente filtragem de bots na CDN/WAF (o Bot Fight Mode da Cloudflare lidera), bloqueios por IP/user-agent no servidor, plugins de segurança ou.htaccess/permissões. 403 não tem efeito na taxa de rastreamento — nunca o use para limitar o rastreamento (use 429/503). E o caso inverso importa: um 403 no próprio robots.txt é tratado de forma permissiva, enquanto um 403 em uma página é um bloqueio rígido.
403 vs. 401 vs. 404 — acerte primeiro o modelo mental
Esses três códigos são constantemente confundidos, e a distinção conduz todo o diagnóstico. A definição básica vem da própria especificação HTTP, RFC 9110 §15.5.4: o servidor entendeu a solicitação e se recusa a atendê-la. Algumas nuances dessa mesma seção importam mais do que as pessoas reconhecem:
- A recusa não precisa estar relacionada a credenciais. A RFC 9110 permite um 403 por razões não relacionadas à autenticação — ele não prova universalmente que o solicitante é “conhecido” ou que credenciais estiveram envolvidas. Não interprete todo 403 como uma história de autenticação.
- Um 403 não precisa admitir que o recurso existe. A especificação permite explicitamente que um servidor de origem que quer esconder se um recurso proibido existe responda com 404. O inverso também é verdade: um 404 nem sempre significa “nunca houve nada aqui” — às vezes significa “há algo aqui que não quero que você conheça”.
- 401 vs. 403 não é apenas “mais fraco vs. mais forte”. Um 401 é especificamente um desafio de autenticação — a especificação exige que venha com um cabeçalho
WWW-Authenticatedizendo ao cliente como autenticar. Um 403 não tem essa exigência; é uma recusa mais ampla que não promete que uma nova autenticação (com as mesmas ou outras credenciais) mudará alguma coisa. A versão simples da MDN: um 403 é “similar to 401, except that … authenticating or re-authenticating makes no difference. The request failure is tied to application logic, such as insufficient permissions.” (tradução) «semelhante a 401, exceto que autenticar ou autenticar novamente não faz diferença. A falha está ligada à lógica da aplicação, como permissões insuficientes.» Evidence for this claim A 403 response means the server understood the request but refuses to fulfill it, and authenticating does not necessarily make a difference. Scope: RFC 9110 defines the protocol semantics; it does not identify the application, firewall, or policy responsible for a specific response. Confidence: high · Verified: IETF: RFC 9110 §15.5.4 — 403 Forbidden - 404 Not Found, por contraste — o caso comum é “não há nada aqui”, embora se aplique a ressalva de ocultação acima.
Essa diferença é parte do motivo pelo qual um 403 ao Googlebot merece uma segunda análise, em vez de ser tratado como rotina. Um 401 para um bot em uma página exclusiva para membros pode estar funcionando — a área exige login. Um 403 para um bot em uma página que deveria ser pública significa que alguma regra considerou o solicitante indesejado — embora, como veremos, ainda seja importante confirmar que a página realmente deveria ser pública antes de chamá-lo de bug.
Como o Google trata um 403 (o resultado se parece com noindex; o mecanismo não)
O Google inclui 403 no restante da família 4xx. Na documentação do Search Central: “Google doesn’t index URLs that return a 4xx status code, and URLs that are already indexed and return a 4xx status code are removed from the index.” (tradução) «O Google não indexa URLs que retornam um código de status 4xx, e URLs já indexadas que retornam um código de status 4xx são removidas do índice.» E: “All 4xx errors, except 429, are treated the same: Google crawlers inform the next processing system that the content doesn’t exist.” (tradução) «Todos os erros 4xx, exceto 429, são tratados da mesma forma: os rastreadores do Google informam ao próximo sistema de processamento que o conteúdo não existe.» O Google também observa que a frequência de rastreamento de uma URL conhecida diminui gradualmente quanto mais tempo ela continua retornando 4xx — um efeito por URL, separado da taxa de rastreamento do site como um todo. Evidence for this claim Google does not index 4xx URLs and removes already-indexed 4xx URLs over time. Scope: Google's crawler documentation supports the indexing outcome for persistent 403 responses, not the article's analogy to noindex. Confidence: high · Verified: Google: How HTTP status codes affect Google's crawlers
Assim, o resultado se parece com noindex: a página não entra no índice e, se já estiver lá, cai com o tempo. Mas o mecanismo é genuinamente diferente: uma tag noindex precisa ser buscada e extraída do HTML da página para surtir efeito, enquanto um 403 impede o Google de ler qualquer conteúdo — não há página para processar. São dois caminhos diferentes que convergem no mesmo resultado de não aparecer na Busca. Por isso, no meu guia de códigos de status HTTP, descrevo 403 simplesmente como “the client is known but doesn’t have access rights” (tradução) «o cliente é conhecido, mas não tem direitos de acesso», e observo que 4xx fazem páginas saírem do índice — embora “conhecido” ali seja um resumo do relatório do Google, não uma afirmação de que todo 403 envolve um solicitante autenticado.
Por que um 403 ao Googlebot merece investigação (não é sempre um erro)
Esta seção se apoia no documento de ajuda de indexação de páginas do Google: “HTTP 403 means that the user agent provided credentials, but was not granted access. However, Googlebot never provides credentials, so your server is returning this error incorrectly. The page will not be indexed.” (tradução) «HTTP 403 significa que o user agent forneceu credenciais, mas não recebeu acesso. No entanto, o Googlebot nunca fornece credenciais, então seu servidor está retornando este erro incorretamente. A página não será indexada.» Leia isso no contexto: é uma orientação específica do relatório sobre uma página que o Search Console presume que você quer indexar, não uma afirmação universal de que todo 403 ao Googlebot é bug. O Googlebot não se autentica, portanto um 403 formulado estritamente como “suas credenciais não são suficientes” não se aplica muito a ele — mas muitos 403 não têm relação com credenciais, e um servidor pode decidir legitimamente que o Googlebot (ou qualquer outra pessoa) não terá um recurso, ponto final.
Antes de correr atrás de uma correção: esta é uma página que você realmente quer tornar pública e indexar? Se é staging, área administrativa, paywall ou qualquer coisa protegida, um 403 ao Googlebot está correto e não há nada a corrigir (mais sobre isso em “Quando um 403 está correto”, abaixo). Se é uma página que deveria ser pública, então provavelmente uma regra foi acionada contra o solicitante errado — um WAF marcou o rastreador como bot a bloquear, um bloqueio de faixa de IP atingiu as faixas do Google ou o padrão paranoico de um plugin de segurança —, mas não tenho dados confiáveis sobre a frequência de cada causa; trate a lista abaixo como candidatos a verificar, não como diagnóstico. Para uma página que deveria ser pública, a orientação do Google é permitir usuários não conectados ou liberar explicitamente o Googlebot sem autenticação (depois de verificar sua identidade).
403 não tem efeito sobre a taxa de rastreamento — não o use para limitar
Às vezes as pessoas recorrem a 403 (ou 404) para fazer o Googlebot recuar diante de um servidor sobrecarregado. Não faça isso. O Google é explícito: “Don’t use 401 and 403 status codes for limiting the crawl rate. The 4xx status codes, except 429, have no effect on crawl rate.” (tradução) «Não use códigos de status 401 e 403 para limitar a taxa de rastreamento. Os códigos de status 4xx, exceto 429, não têm efeito sobre a taxa de rastreamento.» É importante ser preciso quanto ao escopo: o Google também diz que a frequência de rastreamento de uma URL conhecida diminui gradualmente quanto mais tempo ela retorna 4xx — isso reduz o interesse por aquela URL, não limita a taxa de rastreamento do site inteiro. Se você precisa da segunda coisa, 403 não faz isso.
Gary Illyes escreveu uma publicação inteira sobre isso (Don’t 404 my yum): “All 4xx HTTP status codes (again, except 429) will cause your content to be removed from Google Search.” (tradução) «Todos os códigos de status HTTP 4xx (novamente, exceto 429) farão seu conteúdo ser removido da Pesquisa Google.» A alavanca de emergência correta é um 500, 503 ou 429 retornado por uma janela curta (horas, não dias) — e nem isso é passe livre: o Google alerta que respostas 5xx persistentes por vários dias também podem fazer páginas saírem do índice, então escopo e duração importam, não apenas o código escolhido. A reportagem de Barry Schwartz sobre um incidente anterior registrou o risco: sites “lost load[s] of their pages from our index because they were serving them with a 403 status code instead of a 503.” (tradução) «perderam muitas páginas do índice porque as serviam com um código 403 em vez de 503.» 503 é entendido como temporário; 403 faz você sair do índice.
A armadilha do robots.txt: um 403 no robots.txt é permissivo, não restritivo
Esta é uma distinção que quase todo artigo concorrente ignora, e ela inverte a intuição. Um 403 em uma página é um bloqueio rígido. Mas um 403 no seu próprio arquivo robots.txt é tratado de forma oposta. Na especificação robots.txt do Google: “Google’s crawlers treat all 4xx errors, except 429, as if a valid robots.txt file didn’t exist. This means that Google assumes that there are no crawl restrictions.” (tradução) «Os rastreadores do Google tratam todos os erros 4xx, exceto 429, como se um arquivo robots.txt válido não existisse. Isso significa que o Google presume que não há restrições de rastreamento.»
Evidence for this claim A 403 on `/robots.txt` is handled differently from a 403 on a page: Google treats a non-429 4xx robots response as if no valid robots file exists and assumes no restrictions from that file. Scope: robots.txt fetch only Confidence: high · Verified: How Google interprets the robots.txt specificationAssim, se seu firewall começar a retornar 403 para robots.txt, o Google conclui que você não tem regras e rastreia livremente — inclusive caminhos que você pretendia proibir. Na versão colorida de Illyes: se você tinha uma regra proibindo sua “roupa suja”, agora o Googlebot também sabe dela. Não confunda “meu robots.txt retornou 403” (o Google agora ignora suas regras) com “minhas páginas retornaram 403” (essas URLs saem do índice). Os efeitos são opostos, e diagnosticar o caso errado faz você corrigir a coisa errada.
Como o Bing trata 403
Sinceramente, a documentação pública do Bing sobre 403 especificamente é mais limitada que a do Google, então vou manter o escopo estreito em vez de preencher espaço. O Bingbot é negado pelos mesmos mecanismos que o Googlebot — regras de robots.txt, bloqueios de IP/user-agent no servidor e regras de WAF/firewall. O Bing Webmaster Tools mostra erros de rastreamento em seus alertas de erro de rastreamento. A conclusão prática é a mesma nos dois mecanismos: permita a passagem do rastreador verificado pela camada de segurança e confirme o bot pelas faixas de IP publicadas e pelo DNS reverso, em vez de confiar em uma string de user-agent. Trate o Bing como um lembrete de que “corrigir o Googlebot” não significa automaticamente “corrigir todos os bots” — verifique as ferramentas dos dois mecanismos depois de uma mudança no WAF.
Causas comuns (não classificadas — não tenho dados de prevalência entre sites)
Proteção de bots na CDN/WAF — a causa mais negligenciada no conteúdo de SEO existente. É por onde eu começaria a verificar em 2026, embora não possa dizer com que frequência é a causa real em comparação com as demais. O Bot Fight Mode e o Super Bot Fight Mode da Cloudflare, as regras gerenciadas do WAF e regras personalizadas de firewall retornam 403 ao Googlebot e ao Bingbot como dano colateral com frequência. A pista: o bloqueio ocorre na edge, então seu servidor de origem e CMS parecem totalmente limpos enquanto o GSC continua mostrando 403. Verifique os Security Events no painel da CDN em busca do rastreador sendo desafiado ou bloqueado.
2. Bloqueios de IP ou user-agent no servidor/hospedagem. Algumas hospedagens bloqueiam por user-agent ou limitam a taxa por padrão, e bloqueios de faixas de IP destinados a tráfego abusivo podem atingir faixas de rastreadores.
3. Configuração incorreta de robots.txt/.htaccess. Um Deny from perdido ou uma regra de reescrita quebrada pode proibir um diretório inteiro. (E lembre-se da armadilha do robots.txt acima.)
4. Plugins de segurança. Wordfence, iThemes Security e ferramentas semelhantes vêm com padrões agressivos de bloqueio de bots que podem capturar rastreadores legítimos.
5. Barreiras de login/conteúdo autenticado. Qualquer coisa protegida por autenticação retorna 403 ao bot por projeto — o Googlebot nunca faz login. Muitas vezes este caso é intencional (veja a última seção).
6. Erros de permissão de arquivos/diretórios. A causa clássica para administradores de servidor. No WordPress, o Rank Math documenta valores adequados — diretórios 755/750, arquivos 644/640, wp-config.php 400/440 — e “regenerate .htaccess” nas configurações de Links permanentes como uma correção comum.
7. Malware/site comprometido injetando regras de acesso ruins e 8. bloqueio geográfico que captura inadvertidamente a faixa de IP de um rastreador.
Diagnosticando um 403 — isole qual camada o está emitindo
A maioria dos guias pula direto para “desative seus plugins”. A habilidade real é descobrir qual camada está recusando a solicitação — e um código de status 403 isolado não informa isso; você precisa de cabeçalhos de resposta, logs ou um evento de segurança que aponte de fato para CDN, WAF, aplicação, hospedagem, permissões, geografia ou cache antes de nomear um culpado. Não salte para “provavelmente é o WAF” sem evidência. Veja como a correção muda conforme a camada:
- GSC Page Indexing → “Blocked due to access forbidden (403)” para ver as URLs afetadas, depois URL Inspection → Test Live URL para a resposta ao vivo atual.
- Reproduza com curl, trocando user agents, para confirmar o status que o servidor realmente retorna:
Se um navegador normal recebe# As a generic client curl -I https://example.com/page/ # Spoofing Googlebot's UA (tests UA-based rules) curl -I -A "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" https://example.com/page/200, mas o user agent do Googlebot recebe403, você encontrou uma regra de user-agent. - Verifique o status do próprio robots.txt (ele está retornando 403? É outro problema — veja acima).
- Revise os Security Events da CDN/WAF em busca do rastreador sendo desafiado ou bloqueado.
- Confirme que o rastreador é realmente o Googlebot por DNS reverso + direto, não pela string de UA (que é trivialmente falsificável).
- Isole desativando em etapas — uma regra de WAF ou plugin por vez — até o 403 desaparecer.
Corrigindo — permita bots da forma correta
A correção tentadora é permitir a string de user-agent do Googlebot. Não pare aí — strings de UA são trivialmente falsificáveis, então permitir apenas por UA é uma falha de segurança que deixa qualquer scraper que se declare Googlebot entrar. Verifique corretamente:
- Confirme bots por DNS reverso + DNS direto ou pelas faixas de IP publicadas pelo Google/Bing.
- A maioria das CDNs/WAFs oferece uma categoria de “verified bots” que faz essa validação por você — prefira-a a uma regra bruta de permissão por UA.
- Corrija a regra específica (uma regra gerenciada do WAF, uma regra de firewall ou uma configuração de plugin), em vez de desativar a segurança inteira.
- Depois use Validate Fix no relatório Page Indexing do GSC e, se for urgente, solicite a reindexação pela inspeção de URL.
Quando um 403 está correto — não “corrija” estes casos
Nem todo 403 é um bug. Um 403 é correto e intencional para sites de staging, áreas administrativas, seções privadas de membros e conteúdo pago/protegido que você nunca quis indexar. Em uma auditoria do Ahrefs ou Screaming Frog, um 403 nesses casos não é um problema — a correção só é necessária quando uma página que deveria ser pública e indexável está sendo bloqueada por acidente. Não “resolva” por reflexo todo 403 gerado por uma auditoria; confirme primeiro que a página é uma que você realmente quer no índice.
Para a família mais ampla — como 4xx e 5xx diferem e onde 403 se encaixa — veja meu guia de códigos de status HTTP e seu impacto no SEO e os aprofundamentos irmãos de 401 Não Autorizado e 404 Não Encontrado neste cluster.
Resumo de IA
Uma versão condensada do conteúdo avançado:
- 403 = “entendido, mas recusado.” Pela RFC 9110, a recusa não precisa estar relacionada a credenciais, e o servidor pode até enviar 404 se quiser ocultar que um recurso proibido existe. Diferente de 404 (geralmente não existe) e 401 (um desafio de autenticação específico que exige um cabeçalho
WWW-Authenticate), autenticar novamente não corrige um 403 de forma confiável. - O resultado da indexação se parece com
noindex, mas o mecanismo difere. A tagnoindexprecisa ser buscada e lida; um 403 impede o Google de ler qualquer conteúdo. Ambos terminam com a página fora da Busca, por caminhos diferentes. - Um 403 ao Googlebot merece investigação, mas não é automaticamente um erro. Confirme primeiro se a página deveria ser pública. Se sim, a causa provável é uma regra acionada por engano (WAF, bloqueio de IP, plugin de segurança) — mas não há dados confiáveis sobre qual causa é mais comum; trate-as como lista de verificação, não como ranking.
- 403 não tem efeito na taxa de rastreamento do site inteiro. A frequência de rastreamento de uma URL conhecida diminui gradualmente enquanto a resposta de erro persiste, mas isso não é o mesmo que limitar o site inteiro. Nunca use 401/403 para limitar o Googlebot; use 429/503/500 por uma janela curta — e mesmo isso pode causar desindexação se permanecer por muito tempo.
- Armadilha do robots.txt (efeito oposto): 403 em uma página é bloqueio rígido; 403 no próprio robots.txt é tratado como permissivo — o Google presume que não há regras de rastreamento.
- Diagnostique por evidência, não por suposição. Um 403 isolado não identifica sua origem — confirme com cabeçalhos, logs ou eventos de segurança da CDN antes de culpar uma camada específica. GSC Page Indexing + Test Live URL → curl com/sem UA do Googlebot → Security Events da CDN → verifique o bot por DNS/IP, não por UA → desative em etapas.
- Correção: permita bots verificados (DNS/IP ou categoria “verified bots” da CDN), não a string bruta de UA. Depois use Validate Fix no GSC.
- Alguns 403 estão corretos: staging, administração, membros, conteúdo pago — não os “corrija”. Verifique a intenção antes de presumir um bug.
Documentação oficial
Documentação de fontes primárias sobre como 403 e a família 4xx são tratados.
Protocolo
- RFC 9110 §15.5.4: 403 Forbidden — a especificação HTTP básica: a recusa não precisa estar relacionada a credenciais, e a origem pode enviar 404 para ocultar um recurso proibido.
- Como códigos de status HTTP afetam os rastreadores do Google — a afirmação definitiva de que URLs 4xx (exceto 429) saem do índice e não afetam a taxa de rastreamento.
- Relatório de indexação de páginas — Ajuda do Search Console — o status “Blocked due to access forbidden (403)” e a explicação de que o Googlebot nunca fornece credenciais.
- Não use 403 ou 404 para limitar a taxa — Gary Illyes, fevereiro de 2023, sobre por que códigos 4xx são a ferramenta errada para limitar rastreamento.
- Reduza a taxa de rastreamento do Google — a abordagem correta: retornar 500/503/429 brevemente, não 403/404.
- Como o Google interpreta a especificação robots.txt — a nuance de que um 4xx no robots.txt é tratado como ausência de restrições.
- Verificação do Googlebot — DNS reverso e faixas de IP publicadas para permitir o bot da maneira certa.
Bing / Microsoft
- Lista de alertas de erros de rastreamento — Bing Webmaster Tools — categorias de erros de rastreamento do Bing.
CDN/WAF
- Detecção de bot falso bloqueando solicitações legítimas — documentação da Cloudflare sobre como regras gerenciadas de bots falsos podem produzir bloqueios de falso positivo, útil para confirmar (em vez de presumir) que uma regra de WAF é a camada emissora.
Referência geral da web
- MDN — 403 Forbidden — definição básica autoritativa e distinção clara entre 401 e 403.
Citações da fonte
Declarações registradas. Cada link é um link profundo que salta até a passagem citada na página de origem.
Google — como 4xx/403 é tratado
- “Google doesn’t use the content from URLs that return 4xx status codes… Google doesn’t index URLs that return a 4xx status code, and URLs that are already indexed and return a 4xx status code are removed from the index.” (tradução) «O Google não usa o conteúdo de URLs que retornam códigos de status 4xx… O Google não indexa URLs que retornam um código de status 4xx, e URLs já indexadas que retornam um código de status 4xx são removidas do índice.» — Documentação do Google Search Central. Ir para a citação
- “All 4xx errors, except 429, are treated the same: Google crawlers inform the next processing system that the content doesn’t exist.” (tradução) «Todos os erros 4xx, exceto 429, são tratados da mesma forma: os rastreadores do Google informam ao próximo sistema de processamento que o conteúdo não existe.» Ir para a citação
- “Don’t use 401 and 403 status codes for limiting the crawl rate. The 4xx status codes, except 429, have no effect on crawl rate.” (tradução) «Os status 401 e 403 não servem para reduzir a velocidade do rastreamento; os códigos 4xx, salvo 429, não modificam essa taxa.» Ir para a citação
Google — o ponto de que o Googlebot nunca se autentica
- “HTTP 403 means that the user agent provided credentials, but was not granted access. However, Googlebot never provides credentials, so your server is returning this error incorrectly. The page will not be indexed.” (tradução) «O usuário apresentou credenciais, mas não recebeu autorização; como o Googlebot nunca se autentica, um servidor que lhe entrega esse erro está configurado de maneira incorreta. Essa página não entrará no índice.» — Ajuda do Search Console, “Blocked due to access forbidden (403)”. Ir para a citação
Gary Illyes, Google — não limite a taxa com 4xx
- “All 4xx HTTP status codes (again, except 429) will cause your content to be removed from Google Search. What’s worse, if you also serve your robots.txt file with a 4xx HTTP status code, it will be treated as if it didn’t exist.” (tradução) «Todos os códigos de status HTTP 4xx (novamente, exceto 429) farão seu conteúdo ser removido da Pesquisa Google. Pior ainda, se você também servir seu arquivo robots.txt com um código de status HTTP 4xx, ele será tratado como se não existisse.» — Blog do Google Search Central, fevereiro de 2023. Ir para a citação
- “Return a 500, 503, or 429 HTTP status code to Googlebot when it’s crawling too fast.” (tradução) «Retorne um código de status HTTP 500, 503 ou 429 ao Googlebot quando ele estiver rastreando rápido demais.» Ir para a citação
Google — a inversão do 403 no robots.txt
- “Google’s crawlers treat all 4xx errors, except 429, as if a valid robots.txt file didn’t exist. This means that Google assumes that there are no crawl restrictions.” (tradução) «Para o arquivo robots.txt, qualquer erro 4xx, com exceção de 429, equivale à ausência de um arquivo válido; por isso o Google presume que não existem limites de rastreamento.» — Como o Google interpreta a especificação robots.txt. Ir para a citação
MDN — definição geral e distinção entre 401 e 403
- “The HTTP 403 Forbidden client error response status code indicates that the server understood the request but refused to process it. This status is similar to 401, except that for 403 Forbidden responses, authenticating or re-authenticating makes no difference.” (tradução) «O código de status de resposta de erro do cliente HTTP 403 Forbidden indica que o servidor entendeu a solicitação, mas se recusou a processá-la. Esse status é semelhante a 401, exceto que, para respostas 403 Forbidden, autenticar-se ou autenticar-se novamente não faz diferença.» — MDN Web Docs. Ir para a citação
Barry Schwartz, Search Engine Roundtable — gravidade de 403 vs. 503 Reportagem repassada sobre uma declaração do Google, não uma página de primeira parte do Google; observe também que a própria URL de origem retorna 403 para buscadores automatizados (uma ironia pertinente) — confirme em um navegador antes de tratá-la como final.
- Relato do alerta do Google: sites “lost load[s] of their pages from our index because they were serving them with a 403 status code instead of a 503.” (tradução) «perderam muitas páginas do índice porque as serviam com um código 403 em vez de 503.» Leia a cobertura
Diagnosticando um 403 — árvore de decisão
Comece pelo que o Googlebot realmente recebe e depois restrinja por camada.
P1. O 403 está em uma página que você quer indexar?
- Não (staging, administração, membros, conteúdo pago) → provavelmente está correto. Deixe-o assim. Pare aqui.
- Sim → continue.
P2. É a página que retorna 403 ou o robots.txt?
- robots.txt retorna 403 → problema diferente: o Google agora ignora todas as suas regras de rastreamento (trata o robots.txt como ausente). Corrija o robots.txt para retornar
200; o 403 da página pode ser outro problema. - A página retorna 403 → continue.
P3. O curl reproduz o problema — e ele depende do user-agent?
curl -I https://example.com/page/
curl -I -A "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" https://example.com/page/- UA do navegador = 200, UA do Googlebot = 403 → uma regra de user-agent está bloqueando o bot (WAF, configuração do servidor ou plugin). Vá para P4.
- Ambos = 403 → bloqueio mais amplo (faixa de IP, permissões de diretório,
.htaccessDeny). Verifique a configuração do servidor e as permissões. - Ambos = 200, mas o GSC ainda mostra 403 → o bloqueio provavelmente está na edge/CDN e depende de IP ou status de bot verificado. Vá para P4 e confira os Security Events da CDN.
P4. Você está atrás de uma CDN/WAF (Cloudflare etc.)?
- Sim → confira os Security Events em busca do rastreador sendo desafiado/bloqueado. Suspeite de Bot Fight Mode/Super Bot Fight Mode, regras gerenciadas do WAF ou regra personalizada de firewall. Permita bots de busca verificados (não uma permissão bruta por UA).
- Não → verifique bloqueios de IP/UA no servidor, depois plugins de segurança (Wordfence etc.), depois
.htaccesse permissões de arquivo.
P5. A regra foi corrigida?
- Permita por bot verificado/DNS/faixa de IP, nunca apenas pela string de UA → Validate Fix no Page Indexing do GSC → solicite reindexação pela inspeção de URL se for urgente.
Antipadrões — erros de 403 que vejo constantemente
Usar 403 (ou 404) para desacelerar o Googlebot. O mito é que retornar 403 limita o rastreamento. Não limita — 4xx (exceto 429) não tem nenhum efeito sobre a taxa de rastreamento e, em vez disso, remove do índice as páginas que receberam 403. Se precisa desacelerar um rastreamento, retorne 429, 503 ou 500 por uma janela curta (horas a um ou dois dias) ou use o relatório de taxa de rastreamento do Search Console. 403 nunca é a ferramenta de controle de rastreamento, nem temporariamente.
Tratar 403 exatamente como 404 em uma auditoria. Ambos acabam removendo a URL do índice, então é tentador agrupá-los. Mas 404 geralmente significa “sumiu”, enquanto 403 significa “o acesso foi recusado ativamente” — às vezes uma configuração incorreta corrigível, às vezes um bloqueio intencional. Agrupá-los esconde o problema real nos dois casos. Diagnostique a causa e a intenção, não apenas o resultado.
Presumir que o Googlebot “fez algo suspeito” para merecer o bloqueio. O Googlebot nunca envia credenciais, então um 403 descrito como “credenciais ruins” não se aplica realmente a ele. Isso não significa que todo bloqueio seja bug — confirme primeiro se a página deveria ser pública. Se deveria, não racionalize o bloqueio como algo acionado pelo Googlebot; encontre a regra que disparou (WAF, bloqueio de IP, plugin).
Permitir acesso apenas pela string de user-agent. Strings de UA são trivialmente falsificáveis, então uma regra allow if UA contains "Googlebot" convida qualquer scraper que finge ser o Google a atravessar sua segurança. Verifique por DNS reverso + direto ou faixas de IP publicadas, ou use a categoria verified-bots da sua CDN.
Confundir 403 no robots.txt com 403 nas suas páginas. Os efeitos são opostos. Um 403 em uma página é um bloqueio rígido que a remove do índice. Um 403 no robots.txt faz o Google presumir que você não tem regras de rastreamento — então pode rastrear caminhos que você pretendia proibir. Diagnostique qual caso está vendo antes de corrigir qualquer coisa.
“Corrigir” 403 intencionais. Sites de staging, áreas administrativas, membros e conteúdo pago devem retornar 403 aos rastreadores. Resolver por reflexo todo 403 em uma auditoria pode expor coisas que você nunca quis indexar. Confirme primeiro que a página deve ser pública.
A estrutura de intenção, escopo e camada emissora
Uma auditoria de 403 fica mais rápida quando respondo a três perguntas em ordem:
- Intenção: este recurso deve ser público? Deixe um bloqueio deliberado de área privada em paz. Trate um 403 em uma página indexável como um incidente.
- Escopo: a falha afeta uma URL, um diretório, um user agent, uma região geográfica ou toda solicitação? A fronteira geralmente identifica a regra responsável mais rápido do que alterar plugins ao acaso.
- Camada emissora: compare o evento da CDN/WAF, o log de acesso da origem, o log da aplicação e os cabeçalhos de resposta. Altere a primeira camada que realmente emite o 403, não todas as camadas que poderiam emiti-lo.
Depois da correção, verifique separadamente o acesso anônimo e o acesso do rastreador verificado. Um user agent declarado como Googlebot é útil para reproduzir uma regra de UA, mas não prova a identidade do rastreador.
Prompt: isolar um 403 por camada
Diagnose this HTTP 403 using only the evidence I paste. Classify the likely issuing
layer as CDN/WAF, web server, application/security plugin, filesystem permissions,
or intentional access control. Compare generic and claimed-bot responses, identify
which observation supports each conclusion, and give the smallest safe change plus
an anonymous curl test and Search Console validation. Do not recommend disabling all
security or trusting a user-agent string as identity.
[PASTE SANITIZED HEADERS, CURL OUTPUT, SECURITY EVENT, AND LOG LINES]Prompt: revisar uma exceção do WAF
Review this WAF rule intended to stop 403s for legitimate search crawlers. Check its
scope, whether crawler identity is verified, what non-crawler traffic it could admit,
and whether robots.txt behaves differently from page URLs. Return a least-privilege
rewrite, test cases, and rollback conditions. Do not invent provider syntax.
[PASTE RULE AND PROVIDER] Ferramentas para diagnosticar respostas 403
- Bulk HTTP Status Code Checker: descubra se o bloqueio é isolado ou afeta um padrão de URLs sem carregar sua sessão de login.
- HTTP Header Checker: inspecione impressões digitais da CDN, IDs de solicitação e cabeçalhos de segurança que ajudam a identificar a camada emissora.
- Googlebot Verifier: valide evidências de IP antes de permitir a passagem de um rastreador; nunca trate o user-agent sozinho como prova.
- Page Indexing e URL Inspection do Search Console: obtenha o conjunto afetado relatado, teste a resposta atual ao vivo e valide depois da correção.
- Eventos de segurança da CDN/WAF e logs da origem: se a edge registra um bloqueio e a origem não registra solicitação, a correção pertence à edge.
Teste seus conhecimentos: 403 Forbidden
Cinco perguntas rápidas sobre o significado de 403 e como lidar com ele. Escolha uma resposta para cada pergunta e depois confira.
Recursos que valem seu tempo
Meus textos relacionados
- Códigos de status HTTP e seu impacto no SEO — o resumo completo de 4xx/5xx; onde 403 se encaixa e como 4xx fazem páginas saírem do índice.
- Guia para iniciantes de SEO técnico — onde problemas de acesso de rastreamento/indexação, como 403, se encaixam no panorama maior.
- Robots.txt e SEO: tudo o que você precisa saber — a nuance do 403 no robots.txt e como os controles de rastreamento realmente funcionam.
Minhas apresentações
- Como a pesquisa funciona (SlideShare) — meu percurso de rastrear → renderizar → indexar → servir; um 403 é uma falha no primeiro portão. (Aviso permanente: “This is my understanding of systems… not going to be 100% complete or accurate.” (tradução) «Este é meu entendimento dos sistemas… não será 100% completo ou preciso.»)
Da indústria
- Não use 403 ou 404 para limitar a taxa (Google Search Central Blog) — Gary Illyes sobre por que 4xx é a ferramenta errada para limitar rastreamento.
- Reduza a taxa de rastreamento do Google (Google Search Central) — a abordagem correta com 500/503/429, para contraste.
- Google alerta sobre o uso indevido de códigos de status 403 (Search Engine Roundtable) — a anedota sobre a gravidade de 403 vs. 503 (verifique em um navegador; a página retorna 403 a bots).
- Google: não use respostas de erro 403/404 para limitar o rastreamento do Googlebot (Search Engine Journal) — cobertura da orientação de 2023.
- Como corrigir “Bloqueado devido ao acesso proibido (403)” no Google Search Console (SEOTesting) — estrutura sólida de causas/correções, incluindo a pergunta “você deve corrigir todo 403?”.
- Como corrigir o erro “Bloqueado devido ao acesso proibido (403)” (Rank Math) — valores concretos de
chmodno WordPress e fluxo do Health Check. - Códigos de status HTTP: por que meu site não é rastreado? (Screaming Frog) — diagnóstico do lado do rastreador (troca de UA, renderização JS, permissão por IP/UA).
Registro de alterações
Atualizado em 8 de ago. de 2026.
Resumo editorial e detalhes registrados da alteração.Detalhes da alteração
-
As notas detalhadas sobre as alterações estão disponíveis atualmente em inglês.
Não é possível fazer a comparação completa — nenhum instantâneo anterior foi arquivado para esta revisão.
Atualizado em 17 de jul. de 2026.
Resumo editorial e detalhes registrados da alteração.Detalhes da alteração
-
As notas detalhadas sobre as alterações estão disponíveis atualmente em inglês.
Não é possível fazer a comparação completa — nenhum instantâneo anterior foi arquivado para esta revisão.
Try it live
This is a real endpoint on this site — not a simulation.
Hit it from the button, open it in a new tab, or
curl -i it from your terminal, and the server answers with the actual status code this article is about.