O rastreador do Facebook

O rastreador do Facebook rastreia o HTML de um aplicativo ou site que foi compartilhado no Facebook por meio de copiar e colar o link ou por meio de um plugin social do Facebook. O rastreador coleta, armazena e exibe informações sobre o aplicativo ou site, como título, descrição e imagem da miniatura.

Requisitos do rastreador

  • Seu servidor deve usar codificações gzip e deflate.
  • Todas as propriedades do Open Graph precisam ser listadas antes de atingir o primeiro 1 MB de seu site ou aplicativo, do contrário, elas serão cortadas.
  • Verifique se o conteúdo pode ser localizado pelo rastreador em alguns segundos, ou o Facebook não poderá exibir o conteúdo.
  • Seu aplicativo ou site deve gerar e retornar uma resposta com todas as propriedades necessárias, de acordo com os bytes especificados no cabeçalho Range da solicitação do rastreador, ou deve ignorar o cabeçalho Range completamente.
  • Inclua na lista de permissão as cadeias de caracteres do agente do usuário ou os endereços IP (mais seguro) usados pelo rastreador.
  • Verifique se o aplicativo ou site permite que o rastreador do Facebook localize a política de privacidade associada ao seu aplicativo ou site.

IPs do rastreador e agentes de usuário

As cadeias de caracteres de agentes de usuários do rastreador do Facebook:

  • facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)
  • facebookexternalhit/1.1
  • facebookcatalog/1.0

Execute o comando a seguir para obter uma lista atual de endereços IP usados pelo rastreador.

whois -h whois.radb.net -- '-i origin AS32934' | grep ^route  

Esses endereços IP mudam frequentemente.

Exemplo de resposta

...
route:      69.63.176.0/21
route:      69.63.184.0/21
route:      66.220.144.0/20
route:      69.63.176.0/20
route6:     2620:0:1c00::/40
route6:     2a03:2880::/32
route6:     2a03:2880:fffe::/48
route6:     2a03:2880:ffff::/48
route6:     2620:0:1cff::/48
... 

Solução de problemas

Se o conteúdo do site ou do aplicativo não estiver disponível no momento do rastreamento, você poderá forçar essa ação quando ele for disponibilizado informando a URL por meio da ferramenta Depurador de Compartilhamento ou usando a API de Compartilhamento.

É possível simular uma solicitação do rastreador com o código a seguir:

curl -v --compressed -H "Range: bytes=0-524288" -H "Connection: close" -A "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" "$URL"