Crazy knowledge base

日志统计分析程序webalizer的安装和配置

     webalizer是一个高效的、免费的web服务器日志分析程序。其分析结果是HTML文件格式,从而可以很方便的通过web服务器进行浏览。Internet上的很多站点都使用webalizer进行web服务器日志分析。Webalizer具有以下一些特性:

  1. 是用C写的程序,所以其具有很高的运行效率。在主频为200Mhz的机器上,webalizer每秒钟可以分析10000条记录,所以分析一个40M大小的日志文件只需要15秒。
  2. webalizer支持标准的一般日志文件格式(Common Logfile Format);除此之外,也支持几种组合日志格式(Combined Logfile Format)的变种,从而可以统计客户情况以及客户操作系统类型。并且现在webalizer已经可以支持wu-ftpd xferlog日志格式以及squid日志文件格式了。
  3.  支持命令行配置以及配置文件。
  4. 可以支持多种语言,也可以自己进行本地化工作。
  5. 支持多种平台,比如UNIX、linux、NT, OS/2 和 MacOS等。

上图是webalizer生成的访问统计分析报表第一页的内容,这里包含每个月的平均访问量的表格和条形图统计分析情况。点击每个月分,可以得到这个月每天的详细统计信息。

1 安装

webalizer-2.01-10-src.tgz
ftp://ftp.mrunix.net/pub/webalizer/webalizer-2.01-10-src.tgz

tar zvxf webalizer-2.01-10-src.tgz
cd webalizer-2.01-10
./configure –with-language=simplified_chinese
make
make install

在生成的目录中有个lang目录,该目录中保存了各种语言文件,但是只有繁体中文版本,可以自己转换成简体,或者自己重新翻译一下。然后进入生成的目录:

2 配置和运行

# mkdir /var/www/example.com/usage

cp webalizer /usr/bin/
cd /etc
ls webalizer.*
cp webalizer.conf.sample webalizer.conf.example
vi webalizer.conf.example
Edit the webalizer.conf.example file(将里面的值改成下列):
LogFile /usr/local/apache/logs/access_log
OutputDir /var/www/example.com/usage
HostName example.com
Incremental yes
PageType htm*
PageType cgi
PageType php
HideURL *.gif
HideURL *.GIF
HideURL *.jpg
HideURL *.JPG
HideURL *.ra
IgnoreURL /taskbar*

运行:

#/usr/bin/webalizer -c /etc/webalizer.conf.troyoo

正常信息:

Webalizer V2.01-10 (Linux 2.6.9-22.EL) English
Using logfile /usr/local/apache/logs/access_log (clf)
Creating output in /var/www/usage
Hostname for reports is ‘example.com’
Reading history file… webalizer.hist
Reading previous run data.. webalizer.current
11 records (11 ignored) in 0.00 seconds
 
自动运行:

设定crontab 让webalizer每小时运行一次:
crontab -e
0 * * * * /usr/bin/webalizer -c /etc/webalizer.conf.example

查看结果:
http://example.com/usage

3 保护日志统计分析报告不被未授权用户访问

我们肯定不会希望自己网站访问统计信息随意被别人浏览,因此需要将usage目录保护起来,只允许合法用户访问。这里可以采用apache自带的基本的认证机制,配置以后再连接这个地址就会需要用户提供密码才能访问该页面:

1、条件

在配置文件中对目录”/”应该设置为:

DocumentRoot /var/www/test/
AccessFileName .htaccess
AllowOverride All

2、需求

需求:限制对http://example.com/usage/的访问,要求用户认证才能访问。这里设置用户为”admin”,口令为”12345678″。

3、使用htpasswd建立用户文件

/usr/local/apache/bin/htpasswd -c /var/www/.htpasswd admin
此程序会询问用户”admin”的口令,你输入”12345678″,两次生效。

4、建立.htaccess文件

用vi在/var/www/test/usage/目录下建立一个文件.htaccess,写入以下几行:
AuthName admin-only
AuthType Basic
AuthUserFile /var/www/.htpasswd
require user admin

5、测试

这时候通过浏览器访问http://example.com/usage就会弹出框请求输入用户名和口令,这时候输入admin、12345678就可以才可以访问访问日志统计分析报表

日志统计分析程序webalizer的安装和配置
滚动到顶部