首页 > 系统管理 > Awstats安装和配置

Awstats安装和配置

2009年1月8日

目前我同时使用awstat和google analytics,他们各有优劣:GA的报表相对全面而美观但是定制麻烦,而awstats由于是基于网站日志的分析,所以相对来说比较准确; 另外awstats能比较有效的获得搜索引擎bots的最近访问时间,这对seo也是很有帮助的,由于GA是用js方式的,而搜索引擎的bot都会忽略js, 因而GA是无法获得搜索引擎bots相关信息的。

安装

下载安装最新的awstats

cd /home/software
wget http://prdownloads.sourceforge.net//awstats-6.9.tar.gz
tar -xvzf awstats-6.9.tar.gz
mv awstats-6.9 /usr/local/awstats
cd /usr/local/awstats
mkdir -m 755 data

配置Awstats
cd /usr/local/awstats/tools
perl awstats_configure.pl

我们这里假设conf文件配置在/usr/local/awstats目录下。

更新数据库
perl awstats.pl -config=www.jefflei.com -update
如果成功看到结果,可以将以上命令放到crontab中执行,每天8点10分执行更新:
10 8 * * * /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.xyz.com >/dev/null 2>&1

Awstats的高级配置

安装GeoIP
编译安装GeoIP的C应用库:
wget http://geolite.maxmind.com/download/geoip/api/c/GeoIP.tar.gz
tar -xvzf GeoIP.tar.gz
cd GeoIP
./configure
make;make install

安装Perl下的Geo IP应用
perl -MCPAN -e 'install "Geo::IP"'

然后下载GeoIP数据库,具体介绍如何自动下载ip数据库和纯真国内数据库请见我另外一篇博文:

cd /usr/local/share/GeoIP/
wget -t 5 http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
wget -t 5 http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
wget -t 5 http://geolite.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz
gzip -d *
修改awstats的配置文件,添加如下几行:
LoadPlugin="decodeutfkeys"
LoadPlugin="toolstips"

LoadPlugin="geoip GEOIP_STANDARD /usr/local/share/GeoIP/GeoIP.dat"
LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /usr/local/share/GeoIP/GeoLiteCity.dat"
LoadPlugin="geoip_org_maxmind GEOIP_STANDARD /usr/local/share/GeoIP/GeoIPASNum.dat"
#百万级以上网址使用:LoadPlugin="hashfiles"

更新搜索引擎定义
对于中文网页,参照车东blog中介绍的中文搜索引擎定义:
wget http://www.chedong.com/tech/lib.tgz
解压后将search_engine.pm, robots.pm覆盖/usr/local/awstats/wwwroot/cgi-bin/lib/目录下的原文件

使用多awstats配置文件
多个站点很多配置选项是重复的,如果每个配置文件都修改维护起来会很麻烦,AWStats提供了配置文件包含的功能,我们使用一个通用配置:awstats.common.conf。这样每个配置文件只要include这个common设置就可以了:
awstats.www.abc.com.conf:
Include "awstats.common.conf"
LogFile="/usr/local/nginx/logs/access_log.store.%NS"
#压缩文件用 LogFile="zcat /home/www/logs/%YYYY/%MM/www.access.log.%YYYY-24%MM-24%DD-24.gz|" 效率比gzip高

SiteDomain="www.abc.com"
HostAliases="abc.com www.abc.com 127.0.0.1 localhost"

awstats.help.abc.com.conf:
Include "awstats.common.conf"
LogFile="/usr/local/apache/logs/access_log.help.%NS"
SiteDomain="help.abc.com"

AWStats自带了批处理工具tools/awstats_updateall.pl,可以批量地遍历一个目录下所有地配置文件并运行统计, 更新cron脚本如下:
10 8 * * * /usr/local/awstats/tools/awstats_updateall.pl now -configdir=/usr/local/awstats/wwwroot/cgi-bin/ >>/usr/local/awstats/logs/cronaw.log 2>>/usr/local/awstats/logs/cronaw.err

Awstats, Google Analytics, WebAlizer访问统计数据相差很大的问题

这种情况一般是由于被统计的数据不同所造成的,

首先,在awstats配置文件中设置不被统计的文件:
NotPageList="css js class gif jpg jpeg png bmp ico swf pdf txt zip arj rar gz z bz2 wav mp3 wma mpg avi"
webAlizer中,可以修改PageType 配置。

另外,Awstats的页面数包括了ajax请求的页面和include页面,而一般这些页面并不会种GA代码,因此这部分的差异也许会很大, 参见我另一篇如何更精确统计awstats差异页面的文章。

使用准确的中国ip数据库

见刘晖博客,awstats安装QQip数据库。安装后如果还有问题可以安装perl的Net::XWhois

perl -MCPAN -e ‘install Net::XWhois’

安装无误后可根据需要设定系统自动更新IP数据库

extra的编写

推荐几个有用的AWStats Extra扩展统计, 包括获取搜索引擎最近访问时间,抓取地图,还有RSS的访问等,对我们了解搜索引擎bot的动向和RSS用户很有帮助。参见车东关于RSS的一些说明

调整Bots定义

这里介绍了在哪里找robots的定义,参见 DBANotes的这篇关于114的说明

多服务器的日志合并分析

只要你的文件系统没有使用NFS,就需要把不同服务器上的log文件同步到一台上合并分析,合并之前还需要排序以提高awstats的效率

第一步,用rsync同步文件
#!/bin/sh
rsync -avz --progress -e "ssh -p 22" www@10.0.0.1/data/logs/`date --date "1 days ago" +*.\%Y\%m\%d` /data/logs/

在原服务器上删除前一天的日志:
50 4 * * * /bin/rm -f /data/logs/`date --date "1 days ago" +*.\%Y\%m\%d`

第二步,分析日志,假设我们有3台服务器的日志传到第四台服务器上合并日志:
-rw-r--r-- 1 nobody root 1538516677 Oct 29 05:20 www.access.log.1.gz
-rw-r--r-- 1 nobody root 1507444445 Oct 29 04:12 www.access.log.2.gz
-rw-r--r-- 1 nobody root 1507444445 Oct 29 04:43 www.access.log.3.gz

我们利用logresolvemerg.pl配置文件中配置日志处理
LogFile="/usr/local/awstats/tools/logresolvemerge.pl /usr/local/nginx/logs/www.access.log.* |"
logresolve可以合并、排序日志文件,它还自动检测文件格式,只要zcat或bzcat在PATH中,它会自动调用zcat

nginx下的awstats设置

千万级日志的awstats设置

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

系统管理 ,

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.

This blog is kept spam free by WP-SpamFree.