本篇将介绍如何安装AWStats日志分析系统,以完成自动化的日志分析与统计工作。
实验环境;
1)VMware Workstation虚拟机环境
2)linux系统的redhat6.5系列主机,提供web服务,部署AWStats
在部署AWStats之前,提前在redhat6.5系统的主机上将web站点www.benet.com搭建好,具体步骤如下;
修改httpd的主配置文件/etc/httpd/conf/httpd.conf
Listen 192.168.30.15:80 #监听地址改为本机ip,端口80
ServerName www.benet.com:80 #设置web站点的完整主机名
启动httpd服务
然后在本机使用rpm命令安装bind软件包,搭建DNS服务,提供 站点www.benet.com的域名解析服务。具体步骤如下;
分别修改配置文件/etc/named.conf ,/etc/named.rfc1912.zones
切换到/var/named目录下,复制一份数据库文件模板,并指定域名解析记录。
使用service命令启动服务即可。 service named start
1,部署AWStats分析系统
AWStats的软件包可以从官方网站http://www.awstats.org/下载,下面以awstats-7.6.tar.gz软件包为例介绍为web站点www.benet.com添加AWStats日志分析系统的过程
(1)安装AWStats软件包
将提前准备好的软件包进行解压到/opt目录下,并剪切到/usr/local/目录下重命名为awstats
(2)为要统计的站点建立配置文件
借助于AWStats系统提供的awstats_configure.pl脚本可以简化创建过程
首先切换到/usr/local/awstats/tools目录下,并执行其中的awstats_configure.pl脚本
之后进入一个交互式的配置过程,检查awstats的安装目录,httpd服务的配置文件路径,日志记录格式等系统环境,并提示用户指定站点名称,设置配置文件路径。
1)指定httpd主配置文件的路径
配置脚本将查找并识别httpd服务的主配置文件,以便自动添加相关配置内容,需手动输入httpd.conf配置文件的路径
2)为指定web站点创建配置文件
根据提示继续选择“y”以创建站点配置文件,并指定要统计的目标网站名称(需手动输入站名www.benet.com),站点配置文件的存放位置(默认为/etc/awstats)
配置过程中会生成一个URL路径;http://localhost/awstats/awstats.pl?config=www.benet.com,以后可以使用此地址访问日志分析页面,注意访问时要将localhost换成www.benet.com或者对应的IP地址
还可以根据提示设置周期计划任务cron,定时更新日志
接下来我们要查看一下httpd主配置文件里面是否写入awstats相关内容,可以看到在配置文件的末尾多出一些awstats的配置项
3)修改站点统计配置文件
为站点www.benet.com建立好配置文件后,还需要对其做进一步的修改,修改的内容主要包括指定要分析的web日志文件和用来存放统计数据的目录。
首先切换到新建的站点统计配置文件的存放目录/etc/awstats/,并查看一下httpd访问日志文件的路径位置。
修改配置文件,其中LogFile用来指定日志路径,应设置web日志文件的实际位置;DirDate用来指定数据目录,可以采用默认值,但需要创建指定的目录(/var/lib/awstats)。
4)访问AWStats分析系统
在浏览器输入地址http://www.benet.com/awstats/awstats.pl?config=www.benet.com,即可看到AWStats日志分析系统的统计页面。该页面分别按照访问时间,用户来源,所用浏览器等类型列出各种详细的网站访问情况。
5)使用AWStats系统提供的awstats_updateall.pl脚本,可以更新所有站点的日志统计数据,执行该脚本时,系统将会自动分析新增的日志内容,并将分析结果更新到统计数据库中。
还可以设置cron计划任务,使系统定时更新日志统计数据。
可以看到更新之后的数据。
6)可以通过httpd服务的Order,Allow from,Deny from配置项实现对AWStats分析系统页面访问的权限控制。如下设置黑名单禁止192.168.30.0网段的主机访问。
7)为了简化操作,可以在web根目录下建立一个自动跳转的HTML网页,例如,执行以下操作后,用户只要访问http://www.benet.com/awb.html,即可自动跳转到www.benet.com站点的AWStats日志分析页面。