awstats 日志分析
一 所用软件及工具
1,Apache服务器 官方网址:
2,awstats 日志分析软件 官方网址:
3,cronolog 日志截取软件 官方网址:
环境: Red Hat Enterprise Linux Server release 5.4
所需安装包:
awstats-7.0.tar.gz
cronolog-1.6.2.tar.gz
二 安装
1,Apache
./configure --prefix=/usr/local/apache2/ --enable-so
make && make install
2, awstats
mkdir /usr/local/awstats
tar -xzvf awstats-7.0.tar.gz
cp -a awstats-7.0/* /usr/local/awstats
3,安装cronolog
tar -xzvf cronolog-1.6.2.tar.gz
cd cronolog-1.6.2
./configure --prefix=/usr/local/cronolog
make && make install
ln -s /usr/local/cronolog/sbin/* /usr/local/sbin/
cronolog --version
三。配置
1.修改apache配置文件httpd.conf
图片不产生日志
cd /usr/local/apache2/conf/
cp httpd.conf httpd.conf.bak
vim httpd.conf
#filter image files
SetEnvIf Request_URI .gif image-request
SetEnvIf Request_URI .GIF image-request
SetEnvIf Request_URI .jpg image-request
SetEnvIf Request_URI .JPG image-request
SetEnvIf Request_URI .png image-request
SetEnvIf Request_URI .PNG image-request
SetEnvIf Request_URI .swf image-request
SetEnvIf Request_URI .SWF image-request
SetEnvIf Request_URI .css image-request
SetEnvIf Request_URI .CSS image-request
SetEnvIf Request_URI .js image-request
SetEnvIf Request_URI .JS image-request
SetEnvIf Request_URI .ico image-request
虚拟主机日志设置
代码:
ServerAdmin webmaster@abc.net
DocumentRoot /usr/local/apache2/htdocs/
ServerName wt.wtgame.tt
CustomLog "|/usr/local/sbin/sbin/cronolog /db/logs/access.%Y-%m-%d.log" combined env=!image-request
#用cronolog截取存放在/db/logs/下的按日期产生的apache日志文件
或者直接修改apache日志
CustomLog "|/usr/local/sbin/cronolog/usr/local/apache2/logs/access.%Y-%m-%d.log" combined env=!image-request
ErrorLog "|/usr/local/sbin/cronolog /usr/local/apache2/logs/errors.%Y-%m-%d.log"
注: combined方式为详细的日志输入,普通用common
2.添加主机(可添加多个)
cd /usr/local/awstats/tools
perl awstats_configure.pl
Config file path ('none' to skip web server setup):
> /usr/local/apache2/httpd.conf
Do you want me to build a new AWStats config/profile
file (required if first install) [y/N] ? y
Your web site, virtual server or profile name:
>
Directory path to store config file(s) (Enter for default):
>
3。修改awsats配置文件
mkdir /var/lib/awstats
cd /etc/awstats/
#LogFile="/usr/local/apache2/log/httpd/access.%YYYY-4-%MM-2-%DD-2.log"
LogFile="/usr/local/apache2/logs/access_log"
DirData="/var/lib/awstats"
需要创建/var/lib/awstats目录
跳过本地主机
SkipHosts="localhost REGEX[^192.168.]"
通过浏览器更新
AllowToUpdateStatsFromBrowser=1
4。apache上新增的配置文件
安装过程会自动在httpd.conf文件中添加下面的配置信息:
cd /usr/local/apache2/conf
Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/"
Alias /awstatscss "/usr/local/awstats/wwwroot/css/"
Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/"
ScriptAlias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/"
Options None
AllowOverride None
Order allow,deny
Allow from all
5。重启apache
6.静态方法统计
手工自动统计单个网站
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=wt.wtgame.tt
或者用crontab自动统计单个网站
*/15 * * * * /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=
或者用crontab自动统计全部静态页面
*/15 * * * * /usr/local/awstats/tools/awstats_buildstaticpages.pl -update -config= -lang=cn -dir=/db/htdocs/www/awstat/ -
awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
或者定时统计全部网站信息
0 * * * * /usr/local/awstats/tools/awstats_updateall.pl now -configdir=/etc/awstats
统计旧的日志
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -config=wt.wtgame.tt -update -Logfile=/var/log/httpd/.log
7。动态方法统计
再在httpd.conf 中添加
代码:
LoadModule cgi_module modules/mod_cgi.so
增加用访问的认证
8。设定用户认证
再在httpd.conf 中添加代码:
LoadModule auth_module modules/mod_auth.so
在httpd.conf中添加
代码:
AuthType Basic
AuthName "Restricted Files"
AuthUserFile /usr/local/apache2/passwd/passwords
Require user loguser
其中在 /usr/local/apache2/passwd/下产生passwords 的密码文件
运行如下代码产生用户名为loguser用户及其密码
代码:
/usr/local/apache2/bin/htpasswd -c /usr/local/apache2/passwd/passwords loguser
注意:先要在 /usr/local/apache2/下建passwd目录
9.给awstats添加地理显示插件GeoIP city显示
从下载Geo-IP-PurePerl-1.17.tar.gz
解压文件
tar -zxvf Geo-IP-PurePerl-1.17.tar.gz
进入目录
cd Geo-IP-PurePerl-1.17
编译
perl Makefile.PL
make
make test
make install
修改/etc/awstats/awstat.文件
找到
LoadPlugin="geoip GEOIP_STANDARD"
修改成
LoadPlugin="geoip GEOIP_STANDARD /usr/local/share/GeoIP/GeoIP.dat"
再进行统计时,会显示IP是那个国家的
gunzip GeoLiteCity.dat.gz
cp -a GeoLiteCity.dat /usr/local/share/GeoIP/
# 更新动态库路径
echo /usr/local/lib > /etc/ld.so.conf.d/geoip-i386.conf
ldconfig -v
# 修改 awstats 配置
LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /usr/local/share/GeoIP/GeoLiteCity.dat"
下次 update 数据和 build pages 就可以看到
国家或地区 (前 10) 和 主机 (前 10) 中的IP地理位置信息
awstats/tools/awstats_updateall.pl now
awstats/tools/awstats_buildstaticpages.pl -config=configdomainname -month=$M -lang=cn