После установки awstats иногда хочется видеть географическую информацию о посетителях, а не только список их IP. Awstats содержит специальный плагин geoip, который транслирует IP адреса в коды стран. Я использовал плагин для CentOS, но все написанное будет справедливо и для других дистрибутивов Linux.
1. Установим плагин:
# wget http://search.cpan.org/CPAN/authors/id/B/BO/BORISZ/Geo-IP-PurePerl-1.25.tar.gz
# tar -zxf Geo-IP-PurePerl-1.25.tar.gz
# cd Geo-IP-PurePerl-1.25
# perl Makefile.PL
# make
# make test
# make install
Плагин установлен, но не работает, так как отсутствует файл GeoIP.dat:
# make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/0_base..........ok
t/1_lookup........skipped
all skipped: No GeoIP.dat found
t/2_namelookup....skipped
all skipped: No GeoIP.dat found
All tests successful, 2 tests skipped.
Files=3, Tests=1, 1 wallclock secs ( 0.03 cusr + 0.25 csys = 0.28 CPU)
2. Получаем файл GeoIP.dat:
# mkdir /~/GeoIP
# cd /~/GeoIP
# wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
# wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
# gunzip *
У меня сам awstats установлен в /usr/local/awstats/wwwroot/cgi-bin, туда и переносим полученные файлы.
# mv GeoIP.dat GeoLiteCity.dat /usr/local/awstats/wwwroot/cgi-bin
3.Последний штрих — для нужных доменов исправляем конфиги, включая опцию (по умолчанию она закомментирована)
LoadPlugin="/usr/share/GeoIP/geoip"
4. Особо вдумчивый читатель может заметить, что мы использовали только один файл GeoIP.dat. Все верно, статистику можно смотреть не только по странам, но и по городам. Подключите плагин в конфиге файла, добавив строчку
LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /usr/share/GeoIP/GeoLiteCity.dat"
И в статистике будут показаны города 🙂
А в какую диру ставить Geo-IP-PurePerl ?