Olá leitores do Mestre SEO! Hoje falarei sobre o robots.txt, citando vários exemplos para que todo mundo entenda perfeitamente o seu funcionamento. Mas antes disso, falaremos um pouco sobre a importância e regras para o robots.txt.
O robots.txt é um importante aliado na “guerra” contra conteúdo duplicado, assim, sua importância no SEO é imensa.
Só há um robots.txt para cada site e este deve estar no diretório raiz. Se houver outro arquivo robots.txt em qualquer outro diretório, ele não será acessado. Em empresas grandes isso pode ser uma grande desvantagem, pois quando uma empresa é dividida em setores, nem todos os funcionários têm acesso ao diretório raiz do site. Nesse caso, ao invés do robots.txt, é recomendado o uso das meta tags para bloquear URL´s.
O robotos.txt é especialmente útil quando precisamos “eliminar” diretórios inteiros de um site ou quando se quer excluir muitas URL´s que começam com os mesmos caracteres.
É importante ressaltar que o robots.txt não é uma forma de segurança, ele apenas impede que o crawler leia o conteúdo especificado, porém não barra usuários, e além disso, pode ser acessível por qualquer usuário.
Agora que já sabemos a importância do robots.txt no SEO, vamos entender como é seu funcionamento:
Para desabilitar um diretório utilizamos o comando Disallow: /directory. Para comentários utilizamos # e para bloquear um crawler específico, colocamos User-agent: <nome do bot>.
Bloqueando todos os bots
User-agent: *
Disallow: /
Desabilitando o googlebot para um diretório
Desabilitando o googlebot de indexar qualquer coisa que comece com /directory
User-agent: googlebot
Disallow: /directory
Desabilitando um conjunto de arquivos com nomes semelhantes
Podemos também desabilitar arquivos específicos, utilizando as regras de expressões regulares, como por exemplo: ^<sua string>.*$
Por exemplo, desabilitar todos os arquivos que contenham print=qualquer lugar:
User-agent: googlebot
Disallow: /*print=
Desabilitando mais de uma URL para mais de um bot
Quando queremos desabilitar mais de uma URL para mais de um bot, temos de colocar o nome dos user-agents antes do disallow .
User-agent: googlebot
User-agent: msnbot
Disallow: /directory
Disallow: /file.html
Desabilitando regras específicas para diferentes Search Engines
Desabilitando regras específicas (X,Y)para os demais spiders e Z para o googlebot
User-agent: *
Disallow: X
Disallow: Y
User-agent: googlebot
Disallow: Z
Liberando o acesso para um bot somente
Neste exemplo, você só dará acesso ao google bot para acessar seu site, visto que, a regra acima sobrescreve a de baixo.
User-agent: googlebot
Disallow:
User-agent: *
Disallow: /
Caso tenham alguma dúvida na criação do robots.txt, eu sugiro que utilizem a ferramenta online da MestreSEO para geração de robots.txt, que pode auxiliar na criação do seu arquivo.
Espero que tenham gostado e até a próxima!







14 de maio de 2008 às 8:53 am
Já ouvi várias pessoas (mais de 10) dizerem que o Google não “reconhece” o asterisco como máscara nas entradas do robots.txt, é verdade? Não é o que diz seu texto, e particularmente penso que ele reconheça sim, apesar de não ter testado exaustivamente.
[Responder]
14 de maio de 2008 às 8:56 am
Cara, achei espetacular a postagem, e veio na hora certa, ontem mesmo passei um por um problema, ou uma dúvida.
Abordando um pouco sobre o assunto:
Tenho um blog no diretório /blog, porém meu robots encontra no diretório raiz /rotobs.txt (não /blog/rotobs.txt), sendo um blog eu posso deixar o robots no diretório raiz?
Um exemplo do meu robots.txt
User-agent: *
# remova os diretorios
Disallow: /cgi-bin/
Disallow: /blog/wp-admin/
Disallow: /blog/wp-includes/
Disallow: /blog/trackback/
Disallow: /blog/feed/
Disallow: /blog/wp-content/files/
(…)
# Sitemap autodiscover
Sitemap: http://www.matheusfelipe.com.br/sitemap.xml
Abraços e obrigado
[Responder]
17 de maio de 2008 às 10:56 pm
Agora entendi melhor como que funciona o robots.txt.
[Responder]
22 de maio de 2008 às 10:02 am
[...] Conteúdo relevante é o que os usuários estão procurando e a meta de um search engine é fornecê-la. Então, neste mundo perfeito, páginas que contenham as mesmas informações serão classificadas de forma semelhante, independentemente das tecnologias utilizadas em sua composição. Infelizmente, em muitos casos, a verdade é bem diferente. [...]
26 de maio de 2008 às 7:49 am
[...] parte é uma das mais interessante. Aqui tem uma análise do seu robots.txt, e você pode configurar quais partes do seu site não serão indexadas. Aqui também tem a parte [...]
27 de maio de 2008 às 5:23 pm
No item “Liberando o acesso para um bot somente” o correto não seria
User-agent: googlebot
Enable: /
ao inves de:
User-agent: googlebot
Disallow:
User-agent: *
Ou estou viajando ?
[Responder]
28 de maio de 2008 às 3:28 pm
Marcos Elias, o googlebot reconhece * sim. Você pode testar no Google Webmasters Tools.
Matheus Felipe, o local comum do robots.txt é na raiz do site. É raro encontrar esses arquivos em outras áreas do site. Mas você pode sempre usar o Google Webmasters Tools para testar!
Demétrios, não existe a sintaxe “Enable”, o correto é “Allow”. E o que o Rafael escreveu no post está correto sim.
“Disallow:” significa “não permitir: “, ou seja, não há nada especificado para não ser acessado, logo tudo pode ser acessado.
Também é possível fazer isso com a sintaxe ” Allow: * “, ou seja, permitir tudo.
Abraços!
Espero ter ajudado nas dúvidas!
[Responder]
06 de junho de 2008 às 3:36 pm
Alguém sabe onde encontro uma lista de nomes dos principais crawler bots?
[Responder]
07 de junho de 2008 às 10:12 am
E aí Leandro!
No Google tem a lista de nomes dos bots.. brincadeira!
Achei essa lista aqui:
http://www.user-agents.org/index.shtml
É bem extensa e detalhada.
E essa outra mais simples:
http://www.jafsoft.com/searchengines/webbots.html#search_engine_robots_and_others
Os principais acabam sendo o googlebot, yahoo! slurp (é assim mesmo que entra no robots.txt “User-Agent: Yahoo! Slurp”) e o msnbot. Contudo, você pode olhar nas estatísticas do seu site para saber quais outros sites de busca levam visitas ao seu site e descobrir o user agent deles.
Abraços!
[Responder]
16 de junho de 2008 às 8:59 am
[...] nós já tratamos do tema em alguns posts sobre casos e soluções de conteúdo duplicado, como evitar conteúdo duplicado com robots.txt, como identificar e corrigir conteúdo duplicado e um post ilustrado explicando como uma search [...]
17 de junho de 2008 às 9:03 am
[...] faça seu site de modo que os crawlers não possam ver: Isso pode acontecer quando o arquivo robots.txt é usado incorretamente ou quando um site é todo em Flash ou em [...]
20 de julho de 2008 às 12:03 pm
Dúvida:
Quanto tempo leva para o google tirar a indexação de uma página após ter lido o robots.txt?
Tenho páginas que desabilitei a meses e até agora não site da indexação do google!
OBS: as página existem porém não quero que fique visível para o google.
[Responder]
20 de julho de 2008 às 12:06 pm
Outra dúvida:
Se o site tiver uma página no sitemap e a mesma estiver desabilitada no robots.txt o que predomina ? a indexação do sitemap ou o Disallow do robots?
[Responder]
21 de julho de 2008 às 6:25 pm
Olá Demétios,
O tempo varia dependendo do crawl rate do seu site. Ao bloquear do robots, você não deixa o Google indexar a sua página, mas se já estiver indexada, a sua página leva um tempo para ser indexada.
Se quiser remover a página rapidamente, use o Google Webmaster Tools.
O que sempre predomina é o robots, pois o sitemap só mostra a URL, mas o robots dita as regras se o bot pode ou não indexar a página.
Abraços
[Responder]
21 de julho de 2008 às 8:39 pm
Para utilizar a ferramenta “remover URLs” do Google Webmaster precisa que as páginas não esteja dora ar (404) segundo o Google. No meu caso as páginas continuarão no ar, quero apenas tirar a indexação, já faz tempo que coloquei no robots e até agora nada.
[Responder]
21 de julho de 2008 às 9:34 pm
Demétrios, eu acho que eu não me expliquei bem….
Colocando no robots, você bloqueia o acesso à página, mas não remove ela do índice. Para remover você tem que usar a Google Webmaster Tools ou inserir a meta tag “NOINDEX”.
Certo?
[Responder]
04 de setembro de 2008 às 9:05 pm
Dúvida:
Criei uma galeria de imagem que ao clicar nos thumbnail ele gera uma url assim:
wwww.site.com.br/pagina.php#imagens/foto-1.jpg
wwww.site.com.br/pagina.php#imagens/foto-2.jpg
wwww.site.com.br/pagina.php#imagens/foto-3.jpg
Como devo desabilitar a parte “#imagens/foto-x.jpg” no Robots.txt? Por acaso seria:
Disallow: /#imagens=
ou
Disallow: /#=
Não tenho certeza se estou fazendo certo…
[Responder]
05 de setembro de 2008 às 2:34 pm
Olha Demétrios, se você está mesmo usando o caracter # na sua URL vc entrou em uma boa agora, porque esse caracter é usado para indicar um comentário no robots.txt, ou seja, tudo que estiver na mesma linha do # e depois dele, torna-se um comentário, e não uma regra:
disallow: /demetrios #comentario – nao permitir acessar URLs que comecem com demetrios
ou
#a regra abaixo serve para impedir que
#URLs que comecem com demetrios nao sejam acessadas
disallow: /demetrios
Mas, supondo que você não está de fato utilizando esse caracter no robots.txt,
disallow: /pagina.php #bloquear pagina.php
ou
disallow: /pagina.php?imagem= #bloquear pagina.php com parametro imagem
ou
disallow: /pagina/imagem/foto #bloquear url…
são formatos válidos…
[Responder]
05 de setembro de 2008 às 3:46 pm
Eu entendi mais ou menos no final….No robots eu não estou usando o #.
Deixa eu explicar mais um detalhe que esqueci. Eu quero indexar apenas a páginas, ou seja:
Enable: /pagina.php (que no caso nem precisa já que por default o google vai indexar)
e:
disallow: /#imagens/foto-1.jpg (desabilitar a URL gerada pelo link dos thumbnails)
O arquivo “pagina.php” fica na raiz do site, e as imagens ficam no diretório “imagens/sub-pasta/”. Ao clicar nos thumbnails o link vai buscar a imagem ampliada em “imagens/sub-pasta/nome-foto.jpg” e gera uma URL assim: http://www.site.com.br/pagina.php#imagens/sub-pasta/nome-foto-1.jpg, que antes era mostrada apenas http://www.site.com.br/pagina.php. Nessa situação o ideal para o Google não considerar URL duplicada (já que o conteúdo texto sera o mesmo, mudando apenas a foto 1, 2, 3 etc…) seria como?
[Responder]
08 de setembro de 2008 às 12:23 pm
Frank,
Outra dúvida que me surgiu: Se por acaso eu colocar no robots:
Disallow: /pagina.php
Disallow: /pagina.php#imagens/
Allow: /pagina.php#imagens/sub-pasta/nome-foto-1.jpg
Ou seja, estou tentando fazer na 1 e 2 linha com que os buscadores não indexem as páginas “pagina.php” e nem os sub-caminhos “pagina.php#imagens/” e na 3 linha que indexe apenas a página com a primeira foto, minha dúvida é se isto funciona. Isto já resolveria meu problema, apesar de não ser o ideal !!!
Quanto a dúvida no outro posto acima exite uma solução?
[Responder]
08 de setembro de 2008 às 3:59 pm
Então Demétrios, o símbolo # é considerado comentário. Tudo que estiver depois do # e na mesma linha dele, não será considerado regra, os bots vão ignorar.
Se você escrever:
disallow: /pagina.php#imagemX
ele vai entender
disallow: /página.php
mas o que você está precisando fazer é ler o post do Heron sobre Google Webmasters Tools e testar o seu robots. Assim você esclarece suas dúvidas testando!
[Responder]
16 de setembro de 2008 às 9:33 am
Quero bloquear todos os arquivos em HTML, dá pra fazer isso?
Por acaso seria:
Disallow: /*.htm
Ou
Disallow: *.htm
[Responder]
16 de setembro de 2008 às 9:40 am
Outra dúvida:
Tenho um site que ao acessar http://www.site.com.br é redirecionado para http://www.site.com.br/pasta/. Devo colocar o robots.txt e sitemap.xml em http://www.site.com.br/pasta/ ou dentro http://www.site.com.br?
[Responder]
DC disse,
novembro 29th, 2009 às 2:09 pm
É na pasta r.iz do seu site. Olhe em sua pasta raiz de seu servidor?
Os arquivos estão no diretorio raiz ou em http://www.site.com.br/algumacoisa ?
Colequo na raiz no caso do redirecionamento, coloque no local onde será redirecionado.
[Responder]
Frank Marcel disse,
dezembro 2nd, 2009 às 2:29 pm
Demétrio, o local correto para se colocar o arquivo robots.txt é a raiz do domínio, ou seja, ele deve ser acessível por site.com.br/robots.txt.
O sitemap.xml não tem essa obrigação, uma vez que você é que indica às Search Engines onde está este arquivo. No caso do robots.txt, as Search Engines já buscam diretamente na raiz do domínio e em nenhum outro lugar.
[Responder]
12 de dezembro de 2008 às 11:24 pm
[...] Se você não faz idéia do que eu estou falando, leia no Blog de SEO do MestreSEO sobre o robots.txt, um arquivo que faz muita diferença no [...]
10 de fevereiro de 2009 às 9:20 am
Tudo bem, o que ninguém explica é se isto funciona para blogger. Mas pelo andar da carruagem tudo indica que não. Já produzi alguns milhares destes robos txt e enfiei na pasta www do meu computador e nem bloqueei nem desbloqueei as URLs. Pior, quando submeto meu blogue as analises de SEO elas dizem que meu robo txt está bloqueado.
Vou pendurar as chuteiras em ralação a otimização do meu blogue e me dedicar somente a escrever.
Forte abraço
[Responder]
27 de fevereiro de 2009 às 1:04 pm
http://yoast.com/canonical-url-links/ este plugin ajuda na parte de conteudo duplicado apontadom para o link principal.
[Responder]
08 de junho de 2009 às 12:08 pm
Olá pessoal do Mestre SEO, eu comecei meus estudos mais aprimorados sobre SEO final do ano passado, por isso estou longe de ser bom nisso. Atualmente estou tendo um problema com um de meus sites. Eu mudei a estrutura dos permalinks.
O redirecionamento está perfeito, quem acessar a url antiga é redirecionado para a nova, até aí tudo bem. Mas acompanhei a mudança no google webmasters e aparentemente a cada dia cresce o numero de paginas duplicadas, quando abro para ver as urls o google está considerando tanto o permalink antigo como o novo, sendo assim todas as páginas tem 1 conteúdo duplicado.
Poderiam me tirar a dúvida de como eu posso resolver isso. Sei que devem receber muitos pedidos para tirar dúvidas, mas agradeço se atenderem. Forte abraço e parabéns pelo site, tem sido bastante útil.
[Responder]
10 de fevereiro de 2010 às 2:43 pm
[...] http://www.mestreseo.com.br/seo/robots-txt/ [...]
22 de junho de 2010 às 12:48 pm
Removi um diretório com mais de 1000 urls (todas estao com 404), e coloquei este no robots.txt como Disallow, o problema é que apareceram um monte de erros de rastreamento que nao estao saindo: Erros Soft 404 (40)
Não encontrado (652)
Restringido por robots.txt (1.702)
Como removerei este tanto de url com o Webmaster tools? (já tentei a opcao remover um diretorio completo e nao aconteceu nada, o nível de acesso dos bots na opcao do webmaster tools esta no máximo)
Estes erros comprometeriam o pagerank?
[Responder]