Guia completo de diretivas robots.txt: regras e exemplos práticos
O arquivo robots.txt parece simples à primeira vista, mas suas regras têm nuances importantes que a maioria dos desenvolvedores e profissionais de SEO não conhece completamente. Entender como as diretivas são interpretadas, a ordem de precedência entre regras, e como diferentes motores de busca processam o arquivo pode fazer a diferença entre um site bem otimizado e um com problemas sérios de indexação. Este guia de referência cobre todas as diretivas suportadas com exemplos práticos e casos de uso reais, complementando o Gerador de Robots.txt da WikiPlus.
Sintaxe completa do robots.txt: regras e diretivas
O robots.txt segue uma sintaxe simples mas rigorosa. Cada bloco de regras começa com um ou mais User-agent (separados por novas linhas), seguido das diretivas Disallow e Allow. A ordem das diretivas dentro de um bloco importa em alguns contextos. Diretivas suportadas pelo Google: User-agent (obrigatório, especifica o bot), Disallow (bloqueia caminho), Allow (permite caminho dentro de um Disallow), Sitemap (URL do sitemap, pode aparecer qualquer lugar no arquivo), Crawl-delay (intervalo mínimo entre requests — Google não respeita esta diretiva, mas Bing e outros respeitam). Diretivas não suportadas pelo Google: Request-rate, Visit-time, NoIndex (movida para meta tags em 2019). Comentários são feitos com # no início ou fim de uma linha. Linhas em branco separam blocos de User-agent. O Gerador de Robots.txt da WikiPlus garante que apenas diretivas válidas são usadas.
Padrões e wildcards no robots.txt
O padrão de URL nas diretivas Disallow e Allow suporta dois tipos de wildcards. Asterisco (*): corresponde a qualquer sequência de caracteres. Disallow: /search?* bloqueia qualquer URL que começa com /search? independente do que vem depois. Disallow: /*.pdf$ bloqueia qualquer URL que termina em .pdf (o $ é necessário para indicar fim). Disallow: /*/tmp/* bloqueia qualquer URL com /tmp/ em qualquer nível. O cifrão ($): indica fim da URL. Disallow: /$ bloqueia somente a raiz exata (/), não subpáginas. Sem wildcard, a regra corresponde a qualquer URL que começa com o padrão. Disallow: /admin/ bloqueia /admin/ e tudo abaixo (/admin/login, /admin/posts, etc.). A combinação de Allow e Disallow com wildcards permite criar regras sofisticadas de inclusão/exclusão de URL patterns complexos.
Precedência de regras: Allow vs Disallow
Quando uma URL corresponde a múltiplas regras (tanto Allow quanto Disallow), qual prevalece? O Google usa a regra mais específica (mais longa) — a que corresponde ao maior número de caracteres na URL. Se as regras têm o mesmo comprimento, Allow prevalece sobre Disallow. Exemplo: Disallow: /photos/ e Allow: /photos/eventos/ — a URL /photos/eventos/natal.jpg corresponde à regra Allow mais longa, portanto é permitida. A URL /photos/viagens/ corresponde apenas ao Disallow, portanto é bloqueada. Esta especificidade de caracteres é diferente do que muitas pessoas assumem intuitivamente. Para regras complexas, sempre teste usando o Testador de robots.txt do Google Search Console para verificar se o comportamento real corresponde ao esperado. O Gerador de Robots.txt da WikiPlus organiza as regras de forma lógica para minimizar conflitos.
Robots.txt para bots específicos além do Google
Além do Googlebot, existem dezenas de outros bots que rastreiam a web e que podem ser controlados via robots.txt. Bots de busca principais: Bingbot (Microsoft), YandexBot (Yandex), Baiduspider (Baidu), DuckDuckBot (DuckDuckGo). Bots de redes sociais: Twitterbot, LinkedInBot, facebookexternalhit, WhatsApp. Bots de SEO: AhrefsBot, SemrushBot, MJ12bot. Para bloquear ferramentas de scraping agressivo mantendo o acesso para motores de busca legítimos: User-agent: AhrefsBot / Disallow: / bloqueia completamente o Ahrefs. Criar um bloco separado para cada bot permite regras customizadas: Bingbot pode ter regras diferentes do Googlebot em casos específicos. Para sites com conteúdo exclusivo ou propriedade intelectual, verificar e bloquear bots de scraping via robots.txt (combinado com proteções de servidor mais robustas) é uma prática de segurança razoável.
Perguntas frequentes
- O que acontece se não tenho um arquivo robots.txt?
- Sem robots.txt, o Googlebot assume que tudo é permitido e rastreia o site completamente. Isso não é necessariamente ruim para sites simples, mas para sites com áreas privadas ou muitas páginas duplicadas, a ausência de robots.txt pode desperdiçar crawl budget. Crie ao menos um robots.txt básico com a localização do sitemap.
- Posso usar robots.txt para bloquear apenas bots, não usuários?
- Sim. Robots.txt só afeta bots que respeitam o protocolo — browsers normais e usuários humanos não são afetados. Para restringir acesso de usuários a certas áreas, use autenticação HTTP, sessões ou outras formas de controle de acesso no servidor.
- Robots.txt influencia o PageRank ou autoridade de domínio?
- Indiretamente. Bloquear páginas com robots.txt não transfere o link equity delas para outras páginas. Se uma página importante tem links externos mas está bloqueada no robots.txt, o Google pode não rastreá-la para coletar esses sinais. Para páginas com backlinks valiosos, nunca use Disallow — prefira noindex se necessário.