awstats官方网站:http://awstats.sourceforge.net/
perl官方网站:http://www.perl.com/
Awstats是一个非常简洁而且强大的统计工具。它可以统计您站点的如下信息:
一:访问量,访问次数,页面浏览量,点击数,数据流量等精确到每月、每日、每小时的数据
二:访问者国家、访问者IP、操作系统、浏览器等
三:Robots/Spiders的统计
四:纺客持续时间
五:对不同Files type 的统计信息
六:Pages-URL的统计
七:其它信息(搜索关键字等等)
===============================开始配置=======================================
(1)环境
1. 当前系统环境
[[email protected] ~]# cat /etc/redhat-releaseCentOS release 6.7 (Final)[[email protected] ~]# hostname -I10.0.0.8 172.16.1.8[[email protected] ~]# hostnameweb01[[email protected] ~]# uname -r2.6.32-573.el6.x86_64
2. 配置阿里云的base源和epel源(CentOS6)
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repowget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repoyum repolist
Awstats基于Perl的WEB日志分析工具,网上关于它的介绍还是比较多的,因为是基于perl开发的,在管在windows还是linux下都需要先安装perl环境。所以,我们先安装perl。另外,还需要一个apache环境,
[[email protected] ~]# rpm -qa perlperl-5.10.1-141.el6.x86_64
需要提前安装apache服务
[[email protected] ~]# yum -y install httpd[[email protected] ~]# rpm-qa httpdhttpd-2.2.15-54.el6.centos.x86_64
启动apache服务
[[email protected] ~]# /etc/init.d/httpd startServerName [ OK ][[email protected] ~]# chkconfig httpd on[[email protected] ~]# chkconfig --list httpdhttpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
(2)配置
1. 创建相关目录
[[email protected] ~]# mkdir /etc/awstats #<== 用于存放站点日志分析的配置文件 [[email protected] ~]# mkdir /var/lib/awstats #<== 用于存放日志数据信息
2. 上传awstats-6.4.tgz 源码包文件
[[email protected] ~]# cd /usr/local/src/[[email protected] src]# rz awstats-6.4.tgz[[email protected] src]# tar xf awstats-6.4.tgz[[email protected] src]# lsawstats-6.4 awstats-6.4.tgz
3. 复制目录及目录内的所有项目到/usr/local/目录下(去掉版本号,方便使用)
[[email protected] src]# cp -R ./awstats-6.4 /usr/local/awstats[[email protected] src]# ll -d /usr/local/awstatsdrwx------ 5 root root 4096 Oct 4 00:50 /usr/local/awstats
4. 配置awstats
[[email protected] local]# cd /usr/local/awstats/tools
Awstats的配置有自带的配置工具awstats_configure.pl ,首先用vim打开configure.pl文件,看看第一行有关perl运行环境的配置是否正确
[[email protected] tools]# vim awstats_configure.pl #!/usr/bin/perl
运行配置文件进行配置
[[email protected] tools]# perl awstats_configure.pl Config file path (‘none‘ to skip web server setup): > /etc/httpd/conf/httpd.conf #<== 填写配置文件的路径 Do you want me to build a new AWStatsconfig/profile file (required if first install) [y/N] ? y Your web site, virtual server or profile name: > web #<==设置一个网站的域名或名称(自定义) Directory path to store config file(s) (Enter fordefault): > #<== 以下均可一路回车 You can then manually update your statistics for‘web‘ with command: > perl awstats.pl -update -config=web #<== 分析日志命令(直接回车) You can also read your statistics for ‘web‘ withURL: > http://localhost/awstats/awstats.pl?config=web #<== 回车
awstats_configure.pl工具会自动修改您的apache配置,在apache的配置文件httpd.conf文件中自动修改下面信息
[[email protected] tools]# tail /etc/httpd/conf/httpd.conf # # This is to permit URL access to scripts/files inAWStats directory. # <Directory"/usr/local/awstats/wwwroot"> OptionsNone AllowOverride None Orderallow,deny Allowfrom all </Directory>
awstats_configure.pl还将根据安装过程中您的回答(要分析的网站名称)信息,自动产生/etc/awstats/awstats.web.conf文件(该文件主要功能就是指定要分析日志文件的路径)
[[email protected] tools]# ll /etc/awstats/ total 60 -rw-r--r-- 1 root root 58330 Oct 4 01:01 awstats.web.conf
在awstast生成的配置文件中指定apache日志的路径
[[email protected] ~]# cd /etc/awstats/[[email protected] awstats]# vim awstats.web.confLogFile="/var/log/httpd/access_log" #<== 改为我们要分析的apache的日志文件路径
因为我们需要执行awstast中自带的perl脚本分析日志,所以要对脚本进行授权
[[email protected] awstats]# cd/usr/local/awstats/wwwroot/cgi-bin[[email protected] cgi-bin]# chmod +x awstats.pl #<== 加可执行权限[[email protected] cgi-bin]# ll awstats.pl-rwxr-xr-x 1 root root 527395 Oct 4 00:50 awstats.pl
(3)测试
执行分析日志脚本并测试
[[email protected] ~]# perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl-update -config=web #-----------------出现以下结果表明成功----------------------------- Update for config"/etc/awstats/awstats.web.conf" With data in log file"/var/log/httpd/access_log"... Phase 1 : First bypass old records, searching newrecord... Searching new records from beginning of log file... Jumped lines in file: 0 Parsed lines in file: 0 Found 0dropped records, Found 0corrupted records, Found 0 oldrecords, Found 0 newqualified records.
现在将分析的日志结果放到站点目录下的一个文件,得以在web界面上查看日志分析的结果
cd /usr/local/awstats/wwwroot/cgi-bin/perl awstats.pl -update -config=web -output-staticlinks >/var/www/html/awastats.html
# 提示:每次分析日志时都需要将其重定向到站点下的页面才能在web界面上查看
现在即可打开浏览器进行访问http://10.0.0.8/awastats.html
[[email protected] ~]# chown -R apache.apache /var/www/html/ #<== 授权站点目录
以下模拟客户访问网站进行测试
1. 创建测试文件
[[email protected] ~]# cd /var/www/html/[[email protected] html]# echo 123 >test1.html[[email protected] html]# echo 123 >test2.html[[email protected] html]# echo 123 >test3.html
2. 使用ab命令模拟用户访问apache服务器
ab -c 1000 -n 1000 http://10.0.0.8/test1.htmlab -c 2000 -n 2000 http://10.0.0.8/test2.htmlab -c 3000 -n 3000 http://10.0.0.8/test3.htmlab -c 3000 -n 3000 http://10.0.0.8/wastats.html
3. 现在开始执行perl脚本分析apache访问日志(在命令行查看日志分析结果)
[[email protected] cgi-bin]# perl awstats.pl -opdate-config=web Update for config"/etc/awstats/awstats.web.conf" With data in log file"/var/log/httpd/access_log"... Phase 1 : First bypass old records, searching newrecord... Searching new records from beginning of log file... Phase 2 : Now process new records (Flush history ondisk after 20000 hosts)... Jumped lines in file: 0 Parsed lines in file: 9631 Found 84dropped records, Found 0corrupted records, Found 0 oldrecords, Found 9547new qualified records.
4. 现在将分析日志的结果直接重定向到站点目录的文件下(通过web界面查看)
perl awstats.pl -update -config=web -output-staticlinks >/var/www/html/awastats.html
5. 现在打开浏览器访问http://10.0.0.8/awastats.html
被访问最多的URL页面:
查看访问的主机:
错误页面显示:
.........
..........
..........
此日志分析界面还有很多信息,就不一一列举啦!