Robots.txt e a configuração do seu Site

O Conceito do Robots.txt

Robots.txt: Dizendo aos robôs ( crawlers ) o que eles podem e não podem fazer

O robots.txt é um arquivo de configuração presente na raiz dos sites e que serve para guiar o comportamentos dos crawlers, dizendo para os mecanismos de busca o que eles podem e não podem indexar. O Robots.txt é a primeira coisa que os crawlers consultam quando chegam em um site, quando ele não está presente os bots então pressupõe que os site está usando a configuração padrão do Robots.txt que diz que o site todo está aberto para ser indexado. A principal função do Robots.txt como foi dito acima é dizer o que pode e o que não pode ser indexado dentro do seu site, mas o robots também pode ser usado para outros fins tais como ajudar a evitar conteúdo duplicado ( bloqueando pastas ou páginas do seu site que podem eventualmente gerar URLs duplicadas ) ou então para fins menos “nobres” tais como esconder alguma página black hat que não é para os crawlers não verem, mas como sempre repetimos aqui, nunca vale a pena usar nenhum artificio para black hat SEO para qualquer fim, no caso do uso do robots.txt para esconder o black hat por exemplo, se você bloquear a tal pagina, ela não está imune ao fato de alguém poder fazer um link para ela a partir de outro site e ela ser lida e indexada pelos mecanismos de busca do mesmo jeito.

Escrevendo o Robots.txt

A sintaxe ( modo de escrita ) do Robots.txt é padrão ( todos os crawlers em geral entendem o que você escreve do mesmo jeito ) e é bem simples também. Existem alguns comandos básicos:

  • Disallow: É o comando principal e mais usado no contexto do robots. Ele diz para os crawlers o que eles não deve acessar. Você pode usar o disallow para impedir que uma página individualmente não seja indexada ou então para que uma pasta inteira do seu servidor fique de fora da indexação. Para especificar que uma página individualmente não deve ser indexada basta usar:

    Disallow: /diretorio/subpasta/pagina.html

    Para dizer que uma pasta não deve ser indexada basta usar:

    Disallow: /diretorio/subpasta/

    Uma observação importante é que se você bloquear uma pasta que contenha outras subpastas ( como a pasta diretorio do exemplo acima ) todas as subpastas e arquivos internos vão estar bloqueados também, por isso planeje bem o que vai bloquear para não acabar deixando de fora o que deveria ser indexado.

  • User-agent: Comando usado para dizer para quais crawlers serão validas aquelas regras. Como o comportamento dos crawlers e as políticas das diferentes Search Engines tem pequenas diferenças, as vezes é interessante escrever trechos do robots.txt específicos para cada bot, um para o crawler Google, um para o do Yahoo!, etc… O comando User-agent é escrito da seguinte maneira:

    User-agent: <nome_do_crawler>

    Por exemplo usando o código abaixo:

    User-agent: googlebot

    Disallow: /diretorio/subpasta/

    A pasta ficará bloqueada somente para o Googlebot, sendo indexada normalmente por todos os outros. Nome dos crawlers da principais search engines ( para uso no User-agent ):

    • Google: googlebot
    • Yahoo!: slurp
    • MSN: msnbot
  • Sitemap: Ao contrario dos dois comandos citados acima o sitemap é mais simples e serve para indicar explicitamente para os crawlers a localização do seu sitemap e evitar o risco de eles não acharem. Exemplo desse comando:

    Sitemap: https://viniciuspaes.com/blog/sitemap.xml

  • Allow: Funciona exatamente do mesmo modo que o comando Disallow. Usando allow você diz claramente aos robots que determinadas páginas e pastas tem que ser visitadas. É um comando que só é utilizado em ocasiões muito específicas, já que é padrão para os crawlers encarar todas as pastas como permitidas. Um caso em que o Allow é util seria um caso em que o site inteiro está restrito e somente uma página ou pasta pode ser indexada, ai é interessante bloquear todas e depois liberar embaixo com allow o que pode ser encontrado.

Exemplo de um Arquivo Robots.txt Comentado

Abaixo um exemplo de um arquivo Robots.txt completo e a explicação para cada linha:

1. Sitemap: http://www.sitedeexemplo.com.br/sitemap.xml

2. User-agent: *

3. Disallow: /admin/

4. Disallow: /cgi-bin/

5. Disallow: /pictures/

6. Disallow: /tecnology/

7. Allow: /tecnology/computers

8. User-agent: googlebot

9. Disallow: /categories/

10: Disallow: /templates/

Explicação de cada comando:

Linha 1: utilização do comando sitemap para especificar a pasta onde se encontra o sitemap e o nome do arquivo.

Linha 2: este comando indica que as linhas abaixo ( linhas 3 a 7 ) serão lidas e seguidas por todos os crawlers de todas as search engines

Linhas 3 a 6: indicam quais pastas não serão indexadas para todos os crawlers

Linha 7: indica que apesar da pasta tecnology estar impedida de ser indexada, a subpasta computers poderá sim ser lida

Linha 8: indica que a partir dessa linha os comandos só vão valer para o Googlebot

Linhas 9 e 10: pastas que só o Googlebot ficou impedido de visitar

Por enquanto é isso, qualquer dúvida sobre Otimização de Sites é só perguntar deixando seu comentário, abraços !!