Ecco il Facebook agente crawler User:
FacebookExternalHit/1.1
FacebookExternalHit/1.0
o
facebookexternalhit/1.0 (+http://www.facebook.com/externalhit_uatext.php)
facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)
Si noti che i numeri di versione potrebbero cambiare. Quindi usa un'espressione regolare per trovare il nome del crawler e quindi visualizzare il tuo contenuto.
Aggiornamento:
È possibile utilizzare questo codice in PHP per verificare la presenza di Facebook User Agent
if(preg_match('/^FacebookExternalHit\/.*?/i',$agent)){
print "Facebook User-Agent";
// process here for Facebook
}
Ecco il codice ASP.NET. È possibile utilizzare questa funzione per verificare se userAgent è useragent di Facebook.
public static bool IsFacebook(string userAgent)
{
userAgent = userAgent.ToLower();
return userAgent.Contains("facebookexternalhit");
}
Nota:
Perché si bisogno di farlo? Quando condividi un link al tuo sito su Facebook, Facebook lo scansiona e lo analizza per ottenere alcuni dati per visualizzare la miniatura, il titolo e alcuni contenuti della tua pagina, ma rimanderebbe al tuo sito.
Inoltre, penso che questo porterebbe al cloaking del sito, cioè visualizzando diversi dati all'utente e ai crawler. Cloaking non è considerato una buona pratica e può cercare motori e sito prenderne nota.
Aggiornamento: Facebook ha anche aggiunto un nuovo useragent a partire dal 28 maggio 2014
Facebot
Si può leggere di più sul crawler facebook https://developers.facebook.com/docs/sharing/webmasters/crawler
'if (strpos ($ _ SERVER [ 'HTTP_USER_AGENT' ], 'facebookexternalhit')! == false) {...} ' – Xeoncross