Comment detecter les bots sur mon site ?

Voilà d’une question amusante. Bien entendu, tu peux analyser tes logs. Mais dans ce cas, comment tu fais du cloaking ? J’ai une petite fonction PHP qui te permet de jouer facilement avec les bots sur les plages d’IP:

[php]
/**
* Is_bot
* traque la présence d’un bot par plage d’ip
*
* @param string $ip
* @param array $array_bots
* @return string|false
*/

function is_bot ($ip,$array_bots) {
$ip = strval($ip);
$reponse = false;
foreach($array_bots as $bot=>$val) {
foreach($array_bots[$bot] as $ip_bot) {
$reponse = strpos($ip,$ip_bot);
if ($reponse !== FALSE) return $bot;
}
}
return $reponse;
}
[/php]

Utilisation facile:

[php]
$bots = array(
‘google’ => array(‘216.239.46′,’64.68.8′,’66.249.’,’64.233.173′),
‘yahoo’ => array(‘66.196.’,’68.142.’,’202.165.’,’66.142.’)
);

$test = is_bot(‘216.239.46.654’,$bots); //renverra TRUE car 216.239.46 est présent dans l’ip
if($test != FALSE) {
//action affichage bot ou cloaking ;)
$bot = $test;
echo "bot présent<br/>";
echo $bot;
} else {
echo "pas de bot";
}
[/php]

Pour récupérer l’IP du visiteur, il suffit juste de remplacer l’IP de l’exemple par:

[php]
$_SERVER["REMOTE_ADDR"];
[/php]

A vous de jouer!

Jérémy

Les commentaires sont fermés.

Article ajouté au panier
0 Produit - 0,00