O que é o robots.txt e como configurar, é uma dúvida muito comum para SEO’s iniciantes e até mesmo para os mais experientes, mas a configuração correta é decisiva no sucesso ou não de um site.
O que é o robots.txt?
O robots.txt é um arquivo que controla o acesso dos robôs (crawler do Google, Yahoo, Bing entre outros) a determinadas pastas e arquivos, permitindo ou negando o acesso desses robôs a essas pastas e/ou arquivos.
Como podemos ver, o robots.txt é um simples arquivo de texto com extensão .txt e que pode ser “construído” e modificado utilizando-se um simples bloco de notas.
As instruções passadas aos robôs através do robots.txt também são simples e limitam-se a habilitar (allow) ou desabilitar (disallow) o acesso dos mesmos as pastas e arquivos, conforme já mencionei.
Veja o esquema abaixo:

Nele, o robô do buscador ao ler o robots.txt identifica que a página contatos está desabilitada e por isso não vai segui-la.
Como configurar o robots.txt?
Configurar o robots.txt é bem fácil, mas exige bastante atenção, pois um simples erro pode bloquear áreas erradas do seu site.
Sintaxe do robots.txt
O primeiro passo é especificar no robots com qual robô você está falando. Para isso utilizamos a linha “User-agent: + nome do robô”, assim:
User-agent: googlebot
Googlebot como você já deve ter imaginado, é o nome do robô do Google. Slurp é o nome do robô do Yahoo e bingbot o do Bing. Outro “User-agent” que podemos especificar é o “*” representando todos os robôs. Assim não há a necessidade de especificar um por um os robôs existentes.
O segundo passo, é desabilitar as pastas e/ou páginas que você não quer que o robô leia, assim:
Disallow: /artigos-rascunho/ – Neste caso o robô não lerá todos que estão dentro do diretório /artigos-rascunho/
Disallow: /artigos-rascunho.php – Note que /artigos-rascunho/ é diferente de artigos-rascunho.php. No primeiro ele não lerá o conteúdo do diretório, enquanto que no segundo, ele só não lerá o arquivo .php especificado.
Adicionando seu sitemap eu robots.txt
Outra sintaxe que pode ser usada no robots.txt é o endereço do sitemap do seu site, ficando assim:
Sitemap: http://www.seuseite.com.br/sitemap.xml
O endereço do sitemap pode estar tanto no início quanto no final do robots.txt, mas usualmente é colocado logo no início.
Juntando as regras acima, nosso robots.txt ficaria assim:
Sitemap: http://www.seuseite.com.br/sitemap.xml
User-agent: googlebot
Disallow: /artigos-rascunho/
Disallow: /artigos-rascunho.php
Como você deve ter percebido, em momento nenhum utilizamos o “Allow”, isso porque os robôs partem do princípio que se não está desabilitado, então o conteúdo pode ser lido normalmente, não havendo assim a necessidade de especificar isso no robots.txt, salvo em algumas exceções que veremos em “erros comuns no robots.txt”.
Escrevendo robots.txt para vários robôs diferentes
Como vimos mais acima, “cada robô de busca tem um nome e precisamos especificar para cada um deles como devem se comportar.
Regras diferentes no robots.txt para cada robô
Digamos que o Google não está liberado para ler toda a pasta /artigos-rascunho/, enquanto o Yahoo não pode ler somente o artigo /artigos-rascunho.php e o Bing não pode ler ambos (pasta e arquivo). Nosso sitemap ficaria assim:
Sitemap: http://www.seuseite.com.br/sitemap.xml
User-agent: googlebot
Disallow: /artigos-rascunho/User-agent: slurp
Disallow: /artigos-rascunho.phpUser-agent: Bingbot
Disallow: /artigos-rascunho/
Disallow: /artigos-rascunho.php
Até aqui tudo muito tranquilo, já que temos poucas regras e poucos robôs, mas imagine que as regras sejam extremamente numerosas. Como vamos falar com todos os robôs, ainda mais sabendo que existem centenas, se não milhares por aí?
A boa notícia é que em 99,9% dos casos, as regras que inserimos no robots.txt são iguais para todos os robôs, portanto o caso fictício apresentado acima seria assim:
Digamos que nenhum robô está liberado para ler toda a pasta /artigos-rascunho/ e também não está liberado para ler o artigo /artigos-rascunho.php.
Para estas regras teríamos o seguinte robots.txt:
Sitemap: http://www.seuseite.com.br/sitemap.xml
User-agent: *
Disallow: /artigos-rascunho/
Disallow: /artigos-rascunho.php
Erros comuns no robots.txt
É comum erros serem cometidos na composição do robots.txt. Vejamos alguns:
- Não fechar um Disallow de um diretório com a barra no final – Um erro comum é não fechar os diretórios com a barra final nas instruções do robots.txt, assim, em uma instrução errada do tipo Disallow: /artigos-rascunho, tudo o que começar com artigos-rascunho será bloqueado, sejam pastas ou arquivos, inclusive o nosso artigos-rascunho.php;
- Uma simples barra pode bloquear todo o seu site – Já vi pessoas adicionarem ao robots.txt um “Disallow: /” achando que como não nada após a barra, não vai afetar em nada. Engano, o “Disallow: /” simplesmente bloqueia a leitura de todo o seu site.
Configurações avançadas no robots.txt
Algumas configurações mais avançadas podem ser necessárias no robots.txt, as mais comuns são:
1. Acesso a um ou uns arquivos dentro de uma pasta desabilitada (Disallow: /pasta-x/):
Disallow: /pasta-x/
Allow: /pasta-x/arquivo-y.html
A instrução “Allow” deve vir sempre após a “Disallow”
2. Pastas e arquivos de administração devem ser desabilitados. Não há necessidade de leitura dessas pastas e arquivos pelos buscadores. Exemplo:
Disallow: /admin/
Disallow: /wp-admin/
Disallow: /wp-*/ (Essa função vai desabilitar a leitura de qualquer pasta que comesse com “wp”).
Disallow: /login.php
Tem mais erros comuns e comandos “avançados”? Complemente o artigo, deixe seu comentário.









Olá,
Uma dúvida posso fazer o seguinte pois não quero deixar disponível os arquivos que não deseja-se mostrar:
Disallow: /
allow: arquivos_permitidos
alow: /file/arquivos_permitidos.x
allow: arquivos_permitidos
alow: /file/arquivos_permitidos.js
Olá Vinicius;
Pode fazer isso sim, só não entendi o “Allow: arquivos_permitidos”. Isso é um arquivo, um diretório? No robots você precisa especificar tudo bem direitinho, ou terá problemas.
“Allow: arquivos_permitidos”: só estava enchendo Linguiça.
áh acho que seria interessante talvez setar uma conf no .htaccess:
”
Order Deny,Allow
Deny from All
Allow from googlebot.com google.com google-analytics.com yahoo.com bing.com live.com msn.com
“, porém não tenho certeza se permitindo os domínios estará permitindo todos os servidores de todo mundo de tal domínio (por que por exemplo, o bot do google pode ter vários ips) talvez você podesse me explicar uma maneira de bloquear o arquivo, mas permitindo os bots.
Pois outro dia achei uma vulnerabilidade de um site por esse aquivo.