Que sommes-nous, nous autres citoyens du bas-peuple face à la puissance de nos dirigeants? Nous sommes faibles, nos moyens d'actions sont limités et l'on se sent souvent impuissant lorsqu'éclate une crise diplomatique menant à une situation injuste.

Ce fût récemment le cas lors du conflit entre la Suisse et la Libye, on peut annoncer sans grand doute que la majorité des citoyens de ce pays auraient aimé passer quelques minutes dans une cave avec un certain colonel menotté à un des pilliers de soutien.

Au lieu de cela on rumine, on marmonne, on gueule sur nos blogs sans que cela n'aie aucune influence sur l'affaire en question. Ce billet sera d'ailleurs le dernier sur le sujet.

Alors qu'au fond l'union fait la force, et nous autres petites gens avons un certain pouvoir, une certaine capacité d'action selon nos compétences respectives. Mon domaine de prédilection est l'informatique, plus précisément le développement. Ne pouvant rester les bras croisés je vais aujourd'hui te montrer comme devenir ce que l'on appelle un "cyber-dissident" , qui est en gros un dissident politique n'ayant juste pas les balles nécessaires pour aller protester en personne.

Concrètement, je vais te montrer comment bloquer l'accès à tous les visiteurs libyens sur ton site. Tu noteras l'existence d'un plugin pour WordPress qui fait la même chose, j'en avais déjà parlé, c'est juste que tout le monde n'a pas WordPress et que c'est beaucoup plus marrant de le faire à la main.

Bref, tu l'auras deviné, ce billet s'adresse à toi, honorable webmistress ou webmaster helvétique, lorsqu'un bédouin sous sa tente tapera ton URL dans son navigateur il tombera bêtement sur une belle erreur "403 - Forbidden" .

La condition sine qua non est d'avoir un serveur web qui supporte PHP, il te suffit ensuite d'y installer ce superbe outil du ouebe two point zero :



Pour la mise en œuvre c'est très simple, tu télécharges le kit en faisant un clic droit sur l'image du dessus, puis tu choisis "Enregistrer la cible du lien sous..." .

Le fichier ZIP que tu télécharges contient quatre fichiers : "geoip.inc" , "geoip.php" , "GeoIP.dat" et la photo d'un chaton adorable. Tu vas envoyer les trois premiers fichiers dans la racine de ton site web via ton client FTP favori, je te conseille FileZilla. Tu fais ensuite suivre la photo du chaton à tous tes amis en disant qu'il est trop mignon. La base de donnée permettant la géolocalisation est gratuite et distribuée sous license GPL, elle provient de l'excellent site MaxMind.

Dans la racine de ton site web tu devrais avoir un fichier nommé "index.php" , voire "default.php" dans de très rares cas. Tu vas l'ouvrir, deux cas de figures peuvent se présenter.

Si ton fichier d'index commence immédiatement par la balise d'ouverture de code PHP (à savoir "<?php" ), il te suffit d'ajouter le code suivant juste à la ligne du dessous.

1
include("geoip.php");


Si ton fichier commence par du code HTML, c'est ce code que tu dois insérer en tout début de fichier, avant ledit code HTML.

1
2
3
<?php
    include("geoip.php");
?>


Attention, dans les deux cas il est très important qu'aucun caractère ne se trouve avant la balise d'ouverture PHP ("<?php" pour rappel), pas même un simple espace ou un retour à la ligne! Ce point est crucial pour une raison intrinsèque au protocole HTTP, en l'occurrence l'envoi des headers avant tout code HTML.

Une fois que ton fichier "index.php" est modifié alors ton site est immédiatement protégé, te voilà maintenant officiellement devenu protestataire! Tu peux même télécharger la mini-bannière et l'afficher fièrement sur ton site.



Pour résumer les opérations : Téléchargement du fichier ZIP, décompression du fichier ZIP, envoi des trois fichiers à la racine de ton site web, édition du fichier "index.php" . Je te passe l'étape du chaton.

Tu pourras peut-être constater sur place l'efficacité de ce script le jour où toi aussi tu seras injustement enfermé dans une geôle libyenne, à condition d'avoir un accès à Internet bien entendu.
,