XHTML.net

Technology talks by Loïc d’Anterroches

News, articles, PHP, scripts, XHTML/CSS, …

  1. Home
  2. News

Utilisation de Geo::ipfree et awstats

The 2004-08-13 at 22:55 by Loïc d'Anterroches filed under News.

Comme je viens de passer XHTML.net sur son propre serveur et que j’ai d’autres serveurs pour lesquels je dois générer des statistiques de fréquentation, je me suis tourné vers AWStats. L’installation se fait sans problème particulier. Le seul point noir - mais il est commun à tous les logiciels de statistiques - est la localisation du visiteur. Je souhaitais quand même avoir une idée sans passer par la solution de faire la conversion adresse ip du visiteur vers nom de domaine, car cela veut dire vers une requête DNS pour chaque IP du fichier de log, et cela coûte très cher en temps.

Une solution élégante vient de la société MaxMind. Cette société propose des bases données avec pour chaque adresse ip, le pays d’origine. Là où cela devient très intéressant c’est qu’il est possible d’accéder à ces bases de données avec nos langages favoris à travers une api spéciale. Et finalement, pour finir d’être convaincu, il suffit d’apprendre qu’une base est disponible gratuitement avec une précision correcte par la conversion ip vers pays.

Le principe de fonctionnement est le suivant :

  • Vous téléchargez la base de données.
  • Vous installez le module qui vous permet d’accéder à la base avec votre langage préféré.
  • Vous mettez à jour la base de temps en temps.

Voici donc une petite aide pour l’installation avec perl.

  • Téléchargez le module perl Geo::ipfree
  • Éventuellement téléchargez le module perl Memoize si vous avez une debian woody
  • Faites l’installation de ces 2 modules. Pour cela suivez les instructions du fichier README disponible dans l’archive. N’oubliez pas d’être en root pour le make install à la fin.
  • Téléchargez la base GeoIP.dat.gz et faites une extraction de cette dernière dans le répertoire /usr/local/share/GeoIP vous devez créer ce répertoire si besoin.
  • Ouvrez votre fichier de configuration de awstats, par exemple /etc/awstats/awstats.monsite.conf et trouvez la ligne suivante :
#LoadPlugin="geoipfree"

Et remplacez la par :

LoadPlugin="geoipfree"

Le plugin sera donc chargé au moment de la génération des statistiques. Si cela marche, ce fut le cas pour moi et du premier coup, vous allez avoir dans vos statistiques les petits drapeaux des pays, comme ceux-là :

Drapeaux des pays dans AWStats

Comments from readers

ixess said:

Très bonne et simple explication.
Maintenant je sais d'où vienne mes visiteurs.
;-)

XS

sputnick said:

Hé, merci, exactement ce que je cherchais ;)

sputnick said:

Tiens, je vous donne mon petit script pour upgrader la BDD une fois par mois ( il mettent à jour en debut de mois )

http://sputnick-area.net/ftp/downloads/GeoIpUpdate.bash

Ma crontab :

0 6 6 * * /scripts/GeoIpUpdate.bash

Voice your ideas

It is painless and I try not to kill electrons in the process.


Your email is required but will not be shared nor displayed.


Do you think your comment will force me to write even better stuff next time? If so, you simply rock.


Logo of Plume CMS