Um guia detalhado sobre o arquivo Robots.txt

Publicados: 2020-08-10

O robots.txt é um arquivo muito poderoso que pode ser adicionado ao seu site para ajudar a controlar quais áreas do seu site os mecanismos de pesquisa devem rastrear e quais áreas devem ser ignoradas. É importante revisar seu robots.txt regularmente para garantir que ele esteja atualizado e, se possível, usar uma ferramenta de monitoramento para ser alertado quando ocorrerem alterações.

Na Semetrical, como parte de nossa oferta de serviços técnicos de SEO, auditaremos o arquivo robots.txt de um cliente ao realizar uma auditoria técnica de um site de cliente para verificar se os caminhos que estão sendo bloqueados devem ser. Além disso, se a equipe de SEO encontrar problemas como parte do processo de auditoria técnica de SEO, como duplicação, novas regras de robots.txt poderão ser gravadas e adicionadas ao arquivo.

Como o robots.txt é um arquivo importante, reunimos um guia que aborda o que ele é, por que alguém pode usá-lo e as armadilhas comuns que podem ocorrer ao escrever regras.

O que é um arquivo txt de robôs?

O arquivo robots.txt é o primeiro porto de escala para um rastreador ao visitar seu site. É um arquivo de texto que lista instruções para diferentes agentes de usuário que basicamente informa aos rastreadores da Web quais partes de um site devem ser rastreadas e quais devem ser ignoradas. As principais instruções usadas em um arquivo robots.txt são especificadas por uma regra de “permitir” ou “não permitir”.

Historicamente, uma regra “noindex” também funcionaria, no entanto, em 2019, o Google parou de oferecer suporte à diretiva noindex, pois era uma regra não publicada.

Se o arquivo não for usado corretamente, pode ser prejudicial ao seu site e causar uma grande queda no tráfego e nos rankings. Por exemplo, erros podem acontecer quando um site inteiro é bloqueado dos mecanismos de pesquisa ou uma seção de um site é bloqueada por engano. Quando isso acontecer, os rankings conectados a essa parte do site cairão gradualmente e o tráfego, por sua vez, cairá.

Você realmente precisa de um arquivo robots.txt?

Não, não é obrigatório ter um robot.txt em seu site, especialmente para sites pequenos com URLs mínimos, mas é altamente recomendado para sites de médio a grande porte. Em sites grandes, fica mais fácil controlar quais partes do site são acessíveis e quais seções devem ser bloqueadas dos rastreadores. Se o arquivo não existir, seu site geralmente será rastreado e indexado normalmente.

Para que é usado principalmente o arquivo robots txt?

O robots.txt tem muitos casos de uso e na Semetrical nós o usamos para os cenários abaixo:

  • Bloquear resultados de pesquisa interna, pois essas páginas geralmente não são valiosas para um rastreador e podem causar muita duplicação em um site.
  • Bloquear partes de uma navegação de faceta se certas facetas não forem valiosas do ponto de vista de SEO, mas ainda forem necessárias para UX quando um usuário estiver em seu site.
  • Bloquear diferentes níveis de navegação de faceta, onde um nível de faceta pode ser útil para mecanismos de pesquisa, mas ao combinar dois filtros de faceta diferentes, eles podem se tornar irrelevantes para um mecanismo de pesquisa rastrear e indexar.
  • Parâmetros de bloqueio que causam duplicação ou estão desperdiçando o orçamento de rastreamento. Isso é um pouco controverso, pois outros podem dizer para você não bloquear parâmetros no robots.txt, mas isso funcionou em vários sites de nossos clientes onde os parâmetros são necessários, mas os rastreadores não precisam rastreá-los. É altamente recomendável verificar se qualquer parâmetro que você está bloqueando não possui links valiosos ou está classificado para palavras-chave valiosas que trazem tráfego.
  • Bloquear seções privadas de um site, como páginas de checkout e seções de login.
  • Incluindo os locais do mapa do site XML para facilitar o acesso dos rastreadores a todos os URLs do seu site.
  • Para permitir que apenas bots específicos acessem e rastreiem seu site.
  • Bloqueio de conteúdo gerado pelo usuário que não pode ser moderado.

Onde colocar um robots txt e como adicioná-lo ao seu site?

Um arquivo robots.txt precisa ser colocado na raiz do seu site, por exemplo, no site da Semetrical ele fica em www.semetrical.com/robots.txt e deve ser nomeado robots.txt. Um site pode ter apenas um robots.txt e precisa estar em um arquivo de texto codificado em UTF-8 que inclua ASCII.

Se você tiver subdomínios como blog.example.com, o robots.txt pode ficar na raiz do subdomínio, como blog.example.com/robots.txt.

Como é um arquivo robots.txt?

Um arquivo robots.txt típico seria composto de diferentes componentes e elementos que incluem:

  • Agente de usuário
  • Não permitir
  • Permitir
  • Atraso de rastreamento
  • Mapa do site
  • Comentários (Ocasionalmente você pode ver isso)

Abaixo está um exemplo de Semetrcals robots.txt que inclui um agente do usuário, regras de proibição e um mapa do site.

 User-agent: * Disallow: /cgi-bin/ Disallow: /wp-admin/ Disallow: /comments/feed/ Disallow: /trackback/ Disallow: /index.php/ Disallow: /xmlrpc.php Disallow: /blog-documentation/ Disallow: /test/ Disallow: /hpcontent/ Sitemap: https://devsemetrical.wpengine.com/sitemap.xml

Agente de usuário

O user-agent define o início de um grupo de diretivas. Muitas vezes é representado com um curinga (*) que indica que as instruções abaixo são para todos os bots que visitam o site. Um exemplo disso seria:

Agente de usuário: *

 User-agent: * Disallow: /cgi-bin/ Disallow: /wp-admin/

Haverá ocasiões em que você poderá bloquear determinados bots ou permitir que apenas determinados bots acessem determinadas páginas. Para fazer isso, você precisa especificar o nome do bot como o agente do usuário. Um exemplo disso seria:

 User-agent: AdsBot-Google Disallow: /checkout/reserve Disallow: /resale/checkout/order Disallow: /checkout/reserve_search

Os agentes de usuário comuns a serem conhecidos incluem:

Há também a capacidade de impedir que softwares específicos rastreiem seu site ou atrasem quantos URLs eles podem rastrear por segundo, pois cada ferramenta terá seus próprios agentes de usuário que rastreiam seu site. Por exemplo, se você quiser impedir que o SEMRush ou o Ahrefs rastreiem seu site, o seguinte será adicionado ao seu arquivo:

 User-agent: SemrushBot Disallow: * User-agent: AhrefsBot Disallow: *

Se você quiser atrasar o número de URLs rastreados, as regras abaixo serão adicionadas ao seu arquivo:

 User-agent: AhrefsBot Crawl-Delay: [value] User-agent: SemrushBot Crawl-Delay: [value]

Diretiva de proibição

A diretiva disallow é uma regra que um usuário pode colocar no arquivo robots.txt que dirá a um mecanismo de pesquisa para não rastrear um caminho específico ou conjunto de URLs, dependendo da regra criada. Pode haver uma ou várias linhas de regras de proibição no arquivo, pois você pode querer bloquear várias seções de um site.

Se uma diretiva disallow estiver vazia e não especificar nada, os bots poderão rastrear todo o site, portanto, para bloquear determinados caminhos ou todo o site, você precisa especificar um prefixo de URL ou uma barra “/”. Por exemplo, no exemplo abaixo, estamos bloqueando qualquer URL que saia do caminho de /cgi-bin/ ou /wp-admin/.

 User-agent: * Disallow: /cgi-bin/ Disallow: /wp-admin/

Se você quiser bloquear todo o seu site de bots como o Google, precisará adicionar uma diretiva de não permissão seguida de uma barra. Normalmente, você só precisa fazer isso em um ambiente de teste quando não deseja que o site de teste seja encontrado ou indexado. Um exemplo ficaria assim:

 User-agent: * Disallow: /

Permitir diretiva

A maioria dos mecanismos de pesquisa obedecerá à diretiva de permissão, onde essencialmente neutralizará uma diretiva de desautorização. Por exemplo, se você bloquear /wp-admin/, ele normalmente bloquearia todos os URLs que saem desse caminho, no entanto, se houver uma regra de permissão para /wp-admin/admin-ajax.php, os bots rastrearão / admin-ajax.php mas bloqueie qualquer outro caminho que saia de /wp-admin/. Veja exemplo abaixo:

 User-agent: * Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php

Atraso de rastreamento

A diretiva de atraso de rastreamento ajuda a diminuir a taxa de um bot rastreará seu site. Nem todos os mecanismos de pesquisa seguirão a diretiva de atraso de rastreamento, pois é uma regra não oficial.

– O Google não seguirá esta diretiva

– Baidu não seguirá esta diretriz

– O Bing e o Yahoo oferecem suporte à diretiva de atraso de rastreamento em que a regra instrui o bot a aguardar “n” segundos após uma ação de rastreamento.

– O Yandex também suporta a diretiva de atraso de rastreamento, mas interpreta a regra de maneira um pouco diferente, onde ele só acessará seu site uma vez a cada “n” segundos”.

Um exemplo de diretiva de atraso de rastreamento abaixo:

 User-agent: BingBot Disallow: /wp-admin/ Crawl-delay: 5

Diretiva do mapa do site

A diretiva do mapa do site pode informar aos mecanismos de pesquisa onde encontrar seu mapa do site XML e torna mais fácil para diferentes mecanismos de pesquisa encontrar os URLs em seu site. Os principais motores de busca que seguirão esta diretiva incluem, Google, Bing, Yandex e Yahoo.

É aconselhável colocar a diretiva do mapa do site na parte inferior do arquivo robots.txt. Um exemplo disso está abaixo:

 User-agent: * Disallow: /cgi-bin/ Disallow: /wp-admin/ Disallow: /comments/feed/ Sitemap: https://devsemetrical.wpengine.com/sitemap.xml

Comentários

Um arquivo robots.txt pode incluir comentários, mas a presença de comentários é apenas para humanos e não para bots, pois qualquer coisa depois de uma hashtag será ignorada. Os comentários podem ser úteis por vários motivos, incluindo:

– Fornece uma razão pela qual certas regras estão presentes

– Referências que adicionaram as regras

– Referências para quais partes de um site as regras são para

– Explica o que as regras estão fazendo

– Abaixo mostra exemplos de comentários em diferentes arquivos robots.txt:

 #Student Disallow: /student/*-bed-flats-* Disallow: /student/*-bed-houses* Disallow: /comments/feed/ #Added by Semetrical Disallow: /jobs*/full-time/* Disallow: /jobs*/permanent/* #International Disallow: */company/fr/* Disallow: */company/de/*

A ordenação das regras é importante?

A ordenação das regras não é importante, no entanto, quando várias regras de permissão e não permissão se aplicam a uma URL, a regra de caminho de correspondência mais longa é aquela que é aplicada e tem precedência sobre a regra mais curta menos específica. Se ambos os caminhos tiverem o mesmo comprimento, a regra menos restritiva será usada. Se você precisar que um caminho de URL específico seja permitido ou não, você pode tornar a regra mais longa usando “*” para tornar a string mais longa. Por exemplo, não permitir: ********/make-longer

No próprio site do Google, eles listaram um conjunto de exemplos de situações que mostra a regra de prioridade que tem precedência. A tabela abaixo foi retirada do Google.

Como verificar seu arquivo robots.txt?

É sempre importante verificar e validar seu arquivo robots.txt antes de enviá-lo ao vivo, pois regras incorretas podem ter um grande impacto em seu site.

A melhor maneira de testar é acessar a ferramenta de teste robots.txt no Search Console e testar diferentes URLs que devem ser bloqueados com as regras em vigor. Essa também é uma ótima maneira de testar novas regras que você deseja adicionar ao arquivo.

Exemplos de uso de expressões regulares no robots.txt

Ao criar regras em seu arquivo robots.txt, você pode usar a correspondência de padrões para bloquear um intervalo de URLs em uma regra de não permissão. Expressões regulares podem ser usadas para fazer a correspondência de padrões e os dois caracteres principais que o Google e o Bing seguem incluem:

  • Cifrão ($) que corresponde ao final de um URL
  • Asterisco (*) que é uma regra curinga que representa qualquer sequência de caracteres.

Exemplos de correspondência de padrões na Semetrical:

 Disallow: */searchjobs/*

Isso bloqueará qualquer URL que inclua o caminho de /searchjobs/, como: www.example.com/searchjobs/construction. Isso era necessário para um cliente, pois a seção de pesquisa de seu site precisava ser bloqueada para que os mecanismos de pesquisa não rastreassem e indexassem essa seção do site.

 Disallow: /jobs*/full-time/*

Isso bloqueará URLs que incluem um caminho após /jobs/ seguido por /full-time/, como

www.example.com/jobs/admin-secretial-and-pa/full-time/

. Nesse cenário, precisamos de tempo integral como filtro para UX, mas para mecanismos de pesquisa não há necessidade de uma página ser indexada para atender a “título do trabalho” + “tempo integral”.

 Disallow: /jobs*/*-000-*-999/*

Isso bloqueará URLs que incluem filtros salariais, como

www.example.com/jobs/city-of-bristol/-50-000-59-999/

. Nesse cenário, precisamos de filtros salariais, mas não havia a necessidade de os mecanismos de busca rastrearem as páginas salariais e indexá-las.

 Disallow: /jobs/*/*/flexible-hours/

Isso bloqueará URLs que incluam horários flexíveis e incluam dois caminhos de faceta entre eles. Nesse cenário, descobrimos por meio de pesquisa de palavras-chave que os usuários podem pesquisar por local + horário flexível ou emprego + horário flexível, mas os usuários não pesquisariam por "título do trabalho" + "local" + "horário flexível". Um exemplo de URL se parece com

www.example.com/jobs/admin-secretaria-and-pa/united-kingdom/flexible-hours/

.

 Disallow: */company/*/*/*/people$

Isso bloqueará um URL que inclua três caminhos entre empresa e pessoas, bem como o URL que termina com pessoas. Um exemplo seria

www.example.com/company/gb/04905417/company-check-ltd/people

.

 Disallow: *?CostLowerAsNumber=*

Essa regra bloquearia um filtro de parâmetro que ordenasse o preço.

 Disallow: *?Radius=* Disallow: *?radius=*

Essas duas regras impediram que os bots rastreassem um URL de parâmetro que alterasse o raio de uma pesquisa de usuários. Uma regra de maiúsculas e minúsculas foi adicionada, pois o site incluía ambas as versões.

Coisas para estar ciente com o robots.txt

  • O robots.txt diferencia maiúsculas de minúsculas, portanto, você precisa usar as maiúsculas e minúsculas corretas em suas regras. Por exemplo, /hello/ será tratado de maneira diferente de /Hello/.
  • Para que os mecanismos de pesquisa, como o Google, recuperem o cache do seu robots.txt mais rapidamente e encontrem novas regras, você pode inspecionar o URL do robots.txt no Search Console e solicitar a indexação.
  • Se o seu site depender de um robots.txt com várias regras e o URL do seu robots.txt exibir um código de status 4xx por um período prolongado, as regras serão ignoradas e as páginas que foram bloqueadas se tornarão indexáveis. É importante certificar-se de que está sempre servindo um código de status 200.
  • Se o seu site estiver inativo, certifique-se de que o robots.txt retorne um código de status 5xx, pois os mecanismos de pesquisa entenderão que o site está inativo para manutenção e voltarão a rastrear o site novamente posteriormente.
  • Quando os URLs já estão indexados e uma proibição é adicionada ao seu site para remover esses URLs do índice, pode levar algum tempo para que esses URLs sejam descartados e removidos. Além disso, os URLs ainda podem permanecer no índice por um tempo, mas a meta descrição exibirá uma mensagem como “Uma descrição para este resultado não está disponível devido ao robots.txt deste site – saiba mais”.
  • Uma regra de não permissão do robots.txt nem sempre garante que uma página não aparecerá nos resultados de pesquisa, pois o Google ainda pode decidir, com base em fatores externos, como links recebidos, que ela é relevante e deve ser indexada.
  • Se você tiver uma regra de não permissão em vigor e também colocar uma tag "sem índice" no código-fonte de uma página, o "sem índice" será ignorado, pois os mecanismos de pesquisa não poderão acessar a página para descobrir a tag "sem índice".
  • Uma regra de desautorização em páginas indexadas, especialmente aquelas com links recebidos, significa que você perderá o valor do link desses backlinks que, de outra forma, seriam repassados ​​para beneficiar outras páginas. É por isso que é importante verificar se as páginas têm backlinks antes de adicionar uma regra de não permissão.
  • Se a barra inicial no caminho estiver ausente ao escrever uma regra de permissão ou proibição, a regra será ignorada. Por exemplo, “Não permitir: searchjobs.

Se você quiser falar com um de nossos especialistas técnicos em SEO da Semetrical, visite nossa página de serviços técnicos de SEO para obter mais informações.