Awstats: How to install the GeoIP plugin to show country information

Awstats 安装后默认是不支持国家或地区的,来源全部显示为“未知”, 通过GeoIP插件,在AWStats报表中,可以显示IP地址来自那个国家和地区。

1.下载Geo::IP和GeoIP C API的源代码

wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz

 wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz

 wget http://geolite.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz

 

其中 GeoIP 是国家数据,GeoLiteCity 是城市数据,GeoIPASNum 是组织数据

 

2.先安装 GeoIP C API

gunzip GeoIPASNum.dat.gz     #解压缩组织数据

gunzip GeoLiteCity.dat.gz     #解压缩城市数据

gunzip GeoIP.dat.gz        #解压缩国家数据

wget http://geolite.maxmind.com/download/geoip/api/c/GeoIP-1.4.8.tar.gz

tar zxvf GeoIP-1.4.8.tar.gz

 cd GeoIP-1.4.8

./configure 

make && make install

 然后再安装 GeoIP Perl 模块

wget http://www.maxmind.com/download/geoip/api/perl/Geo-IP-1.40.tar.gz

tar zxvf Geo-IP-1.40.tar.gz

cd  Geo-IP-1.40

perl Makefile.PL LIBS='-L/usr/local/lib'

make

make test

make install

mkdir /data/awstats/geoip   #Geoip 库目录

cp *.dat /data/awstats/geoip    # 拷贝Geoip到Geoip 目录

 

3.修改AWStats的站点配置文件,添加以下设置:

LoadPlugin="geoip GEOIP_STANDARD /data/awstats/geoip/GeoIP.dat"

LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /data/awstats/geoip/GeoLiteCity.dat"

LoadPlugin="geoip_asn_maxmind GEOIP_STANDARD /data/awstats/geoip/GeoIPASNum.dat"

最后更新统计数据:

/usr/local/awstats/tools/awstats_updateall.pl now

 由于GeoIP.dat每个月初会更新一次,虽然站上是5/1更新,可是实际解压缩后看到的日期是5/3,故我们可以让系统每个月固定一天去抓这个数据,解压缩后,覆盖掉原有的/data/awstats/geoip/GeoIP.dat这个数据即可。 

vim /root/sbin/update_geoip.sh

# Name: updateGeoIP_dat.sh 

#!/bin/bash 

# Name: updateGeoIP_dat.sh 

# Author: Andowson Chang (andowson [at] gmail [dot] com) 

# Version: 1.1 

# Last Modified: 2012-05-03 

wget http://www.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz

gunzip GeoIP.dat.gz

mv GeoIP.dat /data/awstats/geoip/   

chmod +x /root/sbin/update_geoip.sh

 

把这个写到crontab 任务去 每月的3号凌晨00点抓取数据

00 00 3 * * /root/sbin/update_geoip.sh >/dev/null 

参考资料:http://antezeta.com/awstats/geoip.html

 

http://www.andowson.com/posts/list/28.page