Controlando os Web Crawlers para um Site

:bookmark: Este guia explica como gerenciar rastreadores da web em seu site Discourse.

:person_raising_hand: Nível de usuário necessário: Administrador

Rastreadores da web podem impactar significativamente o desempenho do seu site, aumentando as visualizações de página e a carga do servidor.

Quando um site percebe um pico em suas visualizações de página, é importante verificar como os rastreadores da web se encaixam nesse cenário.


Verificando a atividade de rastreadores

Para ver se os rastreadores estão afetando seu site, navegue até o relatório Visualizações de Página Consolidadas (/admin/reports/consolidated_page_views) no seu painel de administração. Este relatório detalha os números de visualizações de página de usuários logados, usuários anônimos e rastreadores.

Um site onde os rastreadores funcionam normalmente:

Um site onde os rastreadores estão fora de controle:

Identificando rastreadores específicos

Acesse o relatório User Agent do Rastreador da Web (/admin/reports/web_crawlers) para encontrar uma lista de nomes de rastreadores da web ordenados por contagem de visualizações de página.

Quando um rastreador da web problemático atinge o site, o número de suas visualizações de página será muito maior do que o de outros rastreadores da web. Observe que pode haver um número de rastreadores da web maliciosos em operação ao mesmo tempo.

Bloqueando e limitando rastreadores

É um bom hábito não bloquear os rastreadores dos principais mecanismos de busca, como Google, Bing, Baidu (chinês), Yandex (russo), Naver (coreano), DuckDuckGo, Yahoo e outros, com base no seu país.

Quando um rastreador da web está fora de controle, há uma boa chance de que o mesmo rastreador tenha atingido outros sites e alguém já tenha solicitado informações ou criado relatórios sobre ele que serão úteis para entender se deve limitar ou bloquear esse rastreador específico.

Observe que alguns rastreadores podem contribuir com um grande número de visualizações de página se você usar serviços de terceiros para monitorar ou adicionar funcionalidades ao seu site por meio de scripts, etc.

Para obter um registro de rastreadores da web não confiáveis, você pode consultar esta lista, https://github.com/mitchellkrogza/apache-ultimate-bad-bot-blocker/blob/master/robots.txt/robots.txt

Ajustando as configurações do rastreador

Em Admin > Configurações, existem algumas configurações que podem ajudar a limitar a taxa de rastreadores específicos:

  • Acelerar rastreadores usando:

    • slow down crawler user agents
    • slow down crawler rate
  • Bloquear rastreadores com:

    • blocked crawler user agents

Certifique-se de saber o nome exato do user agent para os rastreadores que você deseja controlar. Se você ajustar alguma das configurações acima e não notar uma redução nas visualizações de página desse agente, talvez queira verificar novamente se está usando o nome correto.

Em caso de dúvida sobre como agir, sempre comece com a opção “acelerar” em vez de um bloqueio total. Verifique ao longo do tempo se há melhorias. Você pode prosseguir com um bloqueio total se não notar resultados apreciáveis.

17 curtidas

Deveria haver algum tipo de aviso de que isso funciona apenas com aqueles que se comportam bem? E até mesmo o Google contornará todos eles quando vierem de links do Gmail.

Ambos são aplicados no servidor.

No entanto, se um bot malicioso fingir ser o Chrome ou outra pessoa, falsificando cabeçalhos, não poderemos usar cabeçalhos para detectá-lo…

2 curtidas

Fato matador: Cartões de pré-visualização contam como visualização de página!

O servidor que administro parece ter sido sobrecarregado com solicitações de cartões de pré-visualização do tipo http.rb/5.1.0 (Mastodon/4.0.2; + [https://mstdn.science/](https://mstdn.science/))

Não acho que nenhuma ação possa ser tomada além de dizer aos usuários do Mastodon para incluírem uma imagem para que o cartão de pré-visualização não seja adicionado automaticamente.

1 curtida

Já tenho mais de 1500 acessos por dia de crawlers. :tired_face: Posso bloqueá-los todos usando o Cloudflare DNS? Ou qual opção é necessária para forçar o bloqueio de todos eles? (Instância privada)

Eu simplesmente não os quero.

Usando o nginx como proxy reverso e bloqueando user agents indesejados. Isso ajuda bastante. Bloquear países que você não precisa também ajuda bastante.

Não posso bloquear EUA, França e Alemanha (grandes países de VPS), mas para mim Rússia, Vietnã, Irã, Iraque, etc. ajudaram bastante.

Mas o Discourse é bastante… resiliente é a palavra certa. A situação é muito diferente do WordPress, onde esses bots de SEO inúteis, atacantes, script kiddies e atores maliciosos podem facilmente derrubar um servidor.

2 curtidas

Estou hospedando na Hetzner Alemanha, com apenas duas portas abertas no meu firewall (80/443). E o Discourse roda por trás do NGINX proxy manager (claro, existem soluções melhores, mas sou uma pessoa preguiçosa para codificar e gosto de interfaces web).

Agora estou seguindo a rota de lista de permissões, com uma string aleatória como a única entrada permitida… a partir de agora, sem mais visualizações de página :smiley:

Uma pergunta sobre exatamente o que colocar em “desacelerar user agents de rastreadores”.
Para nós, o Facebook é o principal culpado, com o Bing em um distante terceiro lugar.
O relatório mostra os seguintes agentes como os principais rastreadores que consomem visualizações de página:

O que exatamente deve estar em “desacelerar user agents de rastreadores” - esses URLs exatos incluindo “https” ou “http”? Ou tudo após as barras duplas? Ou algo mais? Ou devemos apenas tentar e errar?

Obrigado!

Para manter as coisas simples, você deve usar os nomes desses bots. Mas você pode usar qualquer parte da string do user agent, mas certifique-se de que não afete mais do que você deseja.

A desaceleração de bots é uma maneira muito não confiável, mas alguns seguem essa regra. Mas estes vêm de seus compartilhamentos, etc. e não criam tanta carga de trabalho. O WordPress seria outra história.

Mas isso faz parte da minha lista de bots bloqueados. Você entende o ponto a partir dela.

1 curtida

Obrigado por isso, @Jagster - muito útil. Às vezes parece um jogo de “bate-a-toupeira”, mas entendi a ideia de usar parte da string do nome do rastreador em vez do todo.

Um trabalho em andamento para mim como administrador do site, eu acho - em frente!

1 curtida

Pode haver várias razões, mas o Googlebot tem seu orçamento e, quando os sitemaps são a forma mais importante de encontrar links, ele nunca alcança links internos quando o orçamento diário/semanal/mensal é usado.

E em um fórum, os links internos são importantes para os usuários, não para o Google.

Mas eu não sei se o Googlebot vê links internos. Deveria, no entanto.

1 curtida