La méthode retenue est un cloaking par adresse ip.
Editer le fichier /spip.php en racine de site pour obtenir :
<?php
$adresseip=strval($_SERVER["REMOTE_ADDR"]);
$google=strpos($adresseip,"66.249");
$slurp1=strpos($adresseip,"72.30");
$slurp2=strpos($adresseip,"74.6");
$msn=strpos($adresseip,"65.55");
$perso=strpos($adresseip,"xxx.xxx.xxx.xxx");
if(($google!==false) || ($slurp1!==false) || ($slurp2!==false) || ($msn!==false) || ($cobra!==false)){
@define('_DIR_RESTREINT_ABS', 'ecrire/');
include_once _DIR_RESTREINT_ABS.'inc_version.php';
if (isset($_GET['fond'])) {
include_spip('inc/headers');
redirige_par_entete(generer_url_public($_GET['fond']));
}
include _DIR_RESTREINT_ABS.'public.php';
}
else{
header('Location: /');
}
?>Quelques explications ;
rajout du début de script php avant le contenu du fichier,
il comprend les classes d’adresses ip utilisées par les robots de google, yahoo et msn, ainsi que l’adresse du poste administrant spip (pour ne pas être redirigé automatiquement vers le site flash).
<?php
$adresseip=strval($_SERVER["REMOTE_ADDR"]);
$google=strpos($adresseip,"66.249");
$slurp1=strpos($adresseip,"72.30");
$slurp2=strpos($adresseip,"74.6");
$msn=strpos($adresseip,"65.55");
$perso=strpos($adresseip,"xxx.xxx.xxx.xxx");
if(($google!==false) || ($slurp1!==false) || ($slurp2!==false) || ($msn!==false) || ($perso!==false)){à ce niveau arrive le contenu original du fichier /spip.php vers lequel sera redirigé le visiteur si sa provenance appartient aux classes d’adresses exposées supra.
@define('_DIR_RESTREINT_ABS', 'ecrire/');
include_once _DIR_RESTREINT_ABS.'inc_version.php';
if (isset($_GET['fond'])) {
include_spip('inc/headers');
redirige_par_entete(generer_url_public($_GET['fond']));
}
include _DIR_RESTREINT_ABS.'public.php';et enfin, la redirection si le visiteur arrive sur le site spip, mais n’appartient pas aux adresses ip mentionnées.
}
else{
header('Location: /');
}
?> Location: / car le site est en /index.html
Paramètres spécifiques :
- Dans la configuration du serveur
DirectoryIndex index.html index.php, pour que le visiteur arrive sur le site flash (qui est sur index.html)
- Le sitemap est édité manuellement (de préférence)