Installation von mod_geoip für Apache2 auf Fedora 9

Version 1.0
Author: Falko Timme


Diese Anleitung veranschaulicht, wie man mod_geoip mit Apache2 auf einem Fedora 9 System aufsetzt. mod_geoip schlägt die IP Adressen der Client Endbenutzer nach. Damit kannst Du Benutzer basierend auf ihrer Herkunft umleiten oder blocken. Du kannst diese Technologie auch für Dein OpenX (früher bekannt als OpenAds oder phpAdsNew) ad Server verwenden um geo targeting zu erlauben.

Ich übernehme keine Garantie, dass dies auch bei Dir funktioniert!

1 Vorbemerkung

Ich gehe davon aus, dass Du ein funktionstüchtiges Fedora 9 System mit Apache2 + PHP hast, wie zum Beispiel in dieser Anelitung gezeigt wird: Der perfekte Server - Fedora 9.

2 Installation von mod_geoip

Um mod_geoip zu installieren, führe einfach Folgendes aus:

yum install mod_geoip

Du findest dann die GeoIP Datenbank (GeoIP.dat) im /usr/share/GeoIP Verzeichnis. Da sich die geografische Zuordnung von IP Adressen mit der Zeit ändern kann, ist es keine schlechte Idee, das neuste GeoIP.dat runter zu laden:

cd /usr/share/GeoIP/
mv GeoIP.dat GeoIP.dat_orig
wget http://www.maxmind.com/download/geoip/database/GeoIP.dat.gz
gunzip GeoIP.dat.gz

Starte als Nächstes Apache neu:

/etc/init.d/httpd restart

Das war's schon!

3 Ein kurzer Test

Um herauszufinden, ob mod_geoip richtig funktioniert, können wir eine kleine PHP Datei in einem unserer Web Spaces erstellen (z.B. /var/www/html):

vi /var/www/html/geoiptest.php

 


print_r($_SERVER);
?>
Rufe diese Datei in einem Browser auf. Das SERVER Array inklusiver der Werte für GEOIP_COUNTRY_CODE, GEOIP_CONTINENT_CODE und GEOIP_COUNTRY_NAME (pass auf, dass Du die Datei von einer öffentlichen IP Adresse und nicht von einer lokalen Adresse aus aufrufst). sollte angezeigt werden.

Array
(
[GEOIP_CONTINENT_CODE] => EU
[GEOIP_COUNTRY_CODE] => DE
[GEOIP_COUNTRY_NAME] => Germany
[HTTP_HOST] => 84.143.142.69
[HTTP_USER_AGENT] => Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14
[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.8 (Fedora) Server at 84.143.142.69 Port 80


[SERVER_SOFTWARE] => Apache/2.2.8 (Fedora)
[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] => 1211819286
)

Wenn Du Apache2 + mod_geoip für Deinen OpenX ad Server verwenden möchtest, vergewissere Dich, dass Du MaxMind mod_apache GeoIP unter Settings > Main Settings > Geotargeting Settings auswählst:

4 Use Cases

Du kannst mod_geoip verwenden um Benuzter basierend auf ihrer Herkunft umzuleiten oder zu blocken/zu erlauben. Hier findest Du einige nützliche Beispiele: http://www.maxmind.com/app/mod_geoip

5 Links

0 Kommentar(e)

Zum Posten von Kommentaren bitte