Autoriser l’accès à une page à seulement une liste de pays
En PHP et avec le .htaccess, on peut facilement identifier une IP et en restreindre l’accès à son site, mais comment faire pour n’autoriser qu’un seul pays à accéder à une page web ? (pour éviter le spamming et les arnaques par exemple)
Voici un script en PHP pour réaliser cela :
<?php // Geolocalise l'IP du visiteur avec le service geoplugin.net $geoPlugin_array = unserialize(file_get_contents("http://www.geoplugin.net/php.gp?ip=".$_SERVER['REMOTE_ADDR'])); // Liste des pays que j'autorise (ici France et Allemagne) $pays_autorise = array ("FR","DE"); // Vérifie si l'IP du visiteur est dans la liste des pays que j'ai autorisé if (in_array($geoPlugin_array['geoplugin_countryCode'],$pays_autorise)) { // je suis dans la liste autorisée donc ne rien faire de spécial; } else { header('Location:http://infodon.fr/'); exit(); } // Je suis interdit, donc on me renvoi ailleurs; ?>
Attention ! Pour que le renvoi avec la fonction “header” fonctionne, il faut vérifier que le script soit bien tout au début de votre page, même un petit espace peut faire que ça ne marchera pas, vous aurez alors une erreur du type “Headers allready sent“.
Commentaires récents