Installation serveur · 2 min read · Jan 02, 2026

Installation de mod_geoip pour Apache2 sur CentOS 6.3

Installation de mod_geoip pour Apache2 sur CentOS 6.3

Version 1.0
Auteur : Falko Timme
Suivez-moi sur Twitter

Ce guide explique comment configurer mod_geoip avec Apache2 sur un système CentOS 6.3. mod_geoip recherche l’adresse IP de l’utilisateur final. Cela vous permet de rediriger ou de bloquer des utilisateurs en fonction de leur pays. Vous pouvez également utiliser cette technologie pour votre serveur publicitaire OpenX (anciennement connu sous le nom d’OpenAds ou phpAdsNew) pour permettre le ciblage géographique.

Je ne donne aucune garantie que cela fonctionnera pour vous !

1 Remarque préliminaire

Je suppose que vous avez un système CentOS 6.3 en cours d’exécution avec un Apache2 + PHP fonctionnel, par exemple comme indiqué dans ce tutoriel : Installation d’Apache2 avec PHP5 et support MySQL sur CentOS 6.3 (LAMP).

2 Installation de mod_geoip

Comme mod_geoip n’est pas disponible dans les dépôts officiels de CentOS, nous devons activer le dépôt EPEL :

rpm --import https://fedoraproject.org/static/0608B895.txt  
 wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm  
 rpm -ivh epel-release-6-7.noarch.rpm
yum install yum-priorities

Éditez /etc/yum.repos.d/epel.repo…

vi /etc/yum.repos.d/epel.repo

… et ajoutez la ligne priority=10 à la section [epel] :

| [epel] name=Extra Packages for Enterprise Linux 6 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch failovermethod=priority enabled=1 priority=10 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 [...] |

Pour installer mod_geoip, il suffit de lancer :

yum install mod_geoip

Vous trouverez ensuite la base de données GeoIP (GeoIP.dat) dans le répertoire /usr/share/GeoIP. Comme l’allocation géographique des adresses IP peut changer au fil du temps, il est judicieux de télécharger la dernière GeoIP.dat maintenant :

cd /usr/share/GeoIP/  
 mv GeoIP.dat GeoIP.dat_orig  
 wget -N -q http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz  
 gunzip GeoIP.dat.gz

Ensuite, nous redémarrons Apache :

/etc/init.d/httpd restart

C’est déjà tout !

3 Un court test

Pour voir si mod_geoip fonctionne correctement, nous pouvons créer un petit fichier PHP dans l’un de nos espaces web (par exemple /var/www/html) :

vi /var/www/html/geoiptest.php

| |

Appelez ce fichier dans un navigateur, et il devrait afficher le tableau SERVER incluant les valeurs pour GEOIP_COUNTRY_CODE, GEOIP_CONTINENT_CODE et GEOIP_COUNTRY_NAME (assurez-vous que vous appelez le fichier depuis une adresse IP publique, pas locale).

Array  
 (  
     [GEOIP_CONTINENT_CODE] => EU  
     [GEOIP_COUNTRY_CODE] => DE  
     [GEOIP_COUNTRY_NAME] => Allemagne  
     [HTTP_HOST] => 84.143.142.69  
     [HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20100101 Firefox/14.0.1  
     [HTTP_ACCEPT] => text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5  
     [HTTP_ACCEPT_LANGUAGE] => en-us,en;q=0.5  
     [HTTP_ACCEPT_ENCODING] => gzip,deflate  
     [HTTP_ACCEPT_CHARSET] => ISO-8859-1,utf-8;q=0.7,*;q=0.7  
     [HTTP_KEEP_ALIVE] => 300  
     [HTTP_CONNECTION] => keep-alive  
     [PATH] => /sbin:/usr/sbin:/bin:/usr/bin  
     [SERVER_SIGNATURE] => 
Apache/2.2.15 (CentOS) Server at www.example.org Port 80
    [SERVER_SOFTWARE] => Apache/2.2.15 (CentOS)     [SERVER_NAME] => 84.143.142.69     [SERVER_ADDR] => 192.168.0.100     [SERVER_PORT] => 80     [REMOTE_ADDR] => 84.143.142.69     [DOCUMENT_ROOT] => /var/www/html     [SERVER_ADMIN] => root@localhost     [SCRIPT_FILENAME] => /var/www/html/geoiptest.php     [REMOTE_PORT] => 57421     [GATEWAY_INTERFACE] => CGI/1.1     [SERVER_PROTOCOL] => HTTP/1.1     [REQUEST_METHOD] => GET     [QUERY_STRING] =>     [REQUEST_URI] => /geoiptest.php     [SCRIPT_NAME] => /geoiptest.php     [PHP_SELF] => /geoiptest.php     [REQUEST_TIME] => 1344547179 )

Si vous souhaitez utiliser Apache2 + mod_geoip pour votre serveur publicitaire OpenX, assurez-vous de sélectionner MaxMind mod_apache GeoIP sous Paramètres > Paramètres principaux > Paramètres de ciblage géographique :

4 Cas d’utilisation

Vous pouvez utiliser mod_geoip pour rediriger ou bloquer/autoriser des utilisateurs en fonction de leur pays. Vous pouvez trouver quelques exemples utiles à ce sujet ici : http://www.maxmind.com/app/mod_geoip

5 Liens

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.