Web日志记录着我们web服务器的被访问的情况,然而,它的记录很多,不具有统计功能,所以,我来介绍两种web日志分析程序(Webslizer和AWstats)。
Webslizer是web日志分析程序。它是用c语言写的,能够很快得读取web日志文件(/var.log/httpd/access_log),并分析统计,将结果输出为html的网页,方便管理人员的浏览。
它可以在www.webalizer.org 官网上下载。下面我们就来看看它的安装步骤:
1、解压
2、检查环境
./configure --sysconfdir=/etc #指定它的配置文档安装目录
3、编译,安装
4、 配置
创建配置文档
[root@zlj webalizer-2.23-05]# cp /etc/webalizer.conf.sample /etc/webalizer.conf
vim /etc/webalizer.conf
添加两行
LogFile /var/log/httpd/access_log#指定web的日志文件
OutputDir /var/www/html/web_log#指定输出目录
还没有/var/www/html/web_log这样的目录
创建目录
mkdir /var/www/html/web_log/
vim /etc/httpd/conf/httpd.conf #编辑apache配置文档
配置身份认证
接下来,我们就创建这样的密钥文件
在/var/www目录下
新创建 htpasswd -c .htpasswd [用户名]
已有这个文件 就 htpasswd .htpasswd [用户名]
启用
webalizer -c +它的配置文件
为了能够自动执行可以将它写到计划任务中
[root@zlj www]# vim /etc/crontab
*/5 * * * * root run-parts /etc/cron.d/ #让它每5分钟执行一次
在这个目录中编辑脚本
#!/bin/sh
run=/usr/local/bin/webalizer
$run -F clf -p -n " " -t "www.abc.com" -o /var/www/html/web_log /var/log/httpd/access_log
并给它执行权
chmod 755 /etc/cron.d/web_log
重启服务
[root@zlj www]# service httpd restart
登陆
Url http://ip/web_log
用户名和密码就是你刚设定的。
登陆成功后,我们就能看到这个页面
点击 Apr 2013看看详细统计
它统计了我们的点击量、文件量、访问人数和流量。
AWstats是在Sourceforge上发展很快的一个完全免费的基于Perl的WEB日志分析工具。
下面我们来看看它的安装。
首先在http://sourceforge.net下载AWstats包。
解压
tar -zxvf awstats-7.1.1.tar.gz -C /usr/local/src/ #给它解压到/usr/local/src/目录下
启用安装向导
[root@zlj ~]# cd /usr/local/src/awstats-7.1.1/ #切换到它的目录下
[root@zlj awstats-7.1.1]# cd tools/
[root@zlj tools]# perl awstats_configure.pl #运行这样的工具
第一次会话 它会创建目录
第二次会话 指定apache的配置文件
第三次会话 指定我们主机名
第四次会话 创建配置脚本
第五次会话 它让我们启用更新
我们就更新
它提示没有这个目录,我们就建一个这样的目录
然后继续执行
它提示我们不能打开日志文件,我们就修改配置文件
[root@zlj ~]# vim /etc/awstats/awstats.www.abc.com.conf
指定我们的apache的日志文件
这次成功了
它提示我们访问
我们就访问
http://localhost/awstats/awstats.pl?config=www.abc.com
Forbidden
You don't have permission to access /awstats/awstats.pl on this server.
Apache/2.2.3 (Red Hat) Server at 192.168.102.7 Port 80
提示我们不能被允许
更改权限
[root@zlj tools]# chmod -R 755 /usr/local/src/awstats-7.1.1/
再次访问
我们再次更新看看
[root@zlj ~]# /usr/local/src/awstats-7.1.1/wwwroot/cgi-bin/awstats.pl -update -config=www.abc.com
它记录的非常详细
最后,为了让它自动更新我们就给它写到脚本中
*/5 * * * * root run-parts /etc/cron.d #让它每5分钟更新一次
让它每5分钟执行一次
编辑配置脚本
[root@zlj ~]# vim /etc/cron.d/web_log
#!/bin/bash
/usr/local/src/awstats-7.1.1/wwwroot/cgi-bin/awstats.pl -update -config=www.abc.com
给它执行权
[root@zlj ~]# chmod a+x /etc/cron.d/web_log