Je travaille actuellement sur un projet utilisant la géolicalisation (cf mon post extension ezPublish ezGeolocalization).
Or je suis rapidement tombé sur un problème : Comment tester mon module de géolocalisation depuis mon poste de développement ?
Ce qui se traduit aussi par comment simuler une IP étrangère pour faire croire à mon serveur web que je suis un internaute étranger.
La solution qui vient tout de suite à l’esprit est d’utiliser un proxy étranger. Mais comment mettre en oeuvre et configurer cela.
après quelques recherches sur internet pas vraiment fructeuses je me suis tourné vers les forums informatiques. Au final il y a peut de sujets sur la question et la plupart ne donnent pas de réponses concrètes. De plus les sujets dérivent assez rapidement. En effet la question génère rapidement de la suspicion de la part des intervenants des forums.
Heureusement un collègue (merci MaNu) ma présenté le site Unblock & Bypass : http://unblockbypass.com/.
Ce site vous permet de naviguer et d’afficher n’importe quel site dans son interface. Ce site étant basé en Allemagne vous apparaissez donc comme un internaute Allemand pour votre serveur.
Grâce à ce site j’ai pu tester mon module de géolocalisation.
Attention toutefois cette technique présente quelques limitations : votre site doit être accessible sur internet (cette solution ne fonctionne pas pour les développements en local), vous ne pouvez apparaitre que comme client Allemand ce qui est assez limité.
A noter, qu’il existe d’autres solutions telles que des logiciels qui modifient vos paramètres réseau ou encore l’extension firefox Foxy Proxy qui permet de passer par un proxy étranger. Mais je n’ai pas testé ces solutions.
VN:F [1.0.8_357]
Rating: 3.3/5 (6 votes cast)
developpement
Je viens de mettre à disposition dans les contributions du site d’ezPublish ma toute dernière extension : ezgeolocalization.
Celle comme son nom l’indique vous permet de géolocaliser les internautes à partir de leur IP. La géolocalisation est de plus en plus utilisée notamment pour proposer des contenus aux internautes en fonction de leur position géographique (par exemple les salles de cinéma proches de chez moi) ou alors pour protéger des contenus (par exemple j’ai l’exclusivité sur les actualités de la formule 1 mais seuls les internautes de france métropolitaine peuvent y accéder).
J’ai donc développé une extension ezPublish proposant une solution de géolocalisation. L’extension utilise les bases de données de géolocalisation gratuites des pays et des villes fournies par la société Maxmind. Elle utilise de plus l’API virtualearth de microsoft afin de vous permettre d’afficher sur une carte interactive et dans le navigateur la position de la ville ou du pays de l’internaute comme présenté sur la capture d’écran :

J’ai préféré utiliser virtualearth plutot que googlemap tout simplement car l’API de microsoft (virtualearth) contrairement à celle de google ne nécessite pas de génération de clé d’authentification pour l’utiliser ce qui était un objectif capital pour pouvoir diffuser mon extension.
Fonctionnalités de l’extension
- pour le front, des opérateurs de templates et une classe métier PHP afin de pouvoir géolocaliser un internaute via son IP
- une interface backoffice permettant d’effectuer les mises à jours manuelle des bases de données ainsi qu’une interface permettant de géolicaliser une IP
- un cron de mise à jour automatique de la base de géolocalisation des pays (la base des villes est trop grosse pour cela) à partir du site de Maxmind
Vous pouvez télécharger cette extension à l’adresse suivante : http://agdeveloppement.e3b.org/ezpublish/ezgeolocalization.zip (22Mo).
Installation
- décompresser l’archive zip et la copier dans le repertoire extension d’ezPublish
- décompresser le fichier /sql/dump_ezgeo.zip et exécuter le script SQL afin de créer les tables de géolocalisation
- activer l’extension dans le backoffice
- vider le cache d’ezPublish
Ce n’est pour l’instant que la version 1 de cette extension et je travaille encore dessus afin de lui apporter de nouvelles fonctionnalités.
N’hésitez pas à me laisser vos commentaires ils me seront très utiles pour faire évoluer ce projet.
VN:F [1.0.8_357]
Rating: 3.2/5 (6 votes cast)
developpement, ezPublish
ezPublish, php