Awstats部署说明

Awstats介绍

AWStats是在Sourceforge上发展很快的一个基于Perl的WEB日志分析工具。通过分析服务器的访问日志,可以了解服务器的使用情况,方便服务器的维护和管理。

基础安装

  1. AWStats使用perl编写,因此需要perl的环境支持。对于windows用户,下载ActivePerl,并安装。

  2. AWStats官网获取最新的AWStats。

  3. 将AWStats解压,并进入目录awstats\tools,执行命令perl awstats_configure.pl,按照提示完成配置(依次输入apache位置/apache配置文件位置/统计站点的域名)。
  4. 修改Apache配置文件Apache2.2\conf\httpd.conf,找到Awstats新添加的配置(配置文件的最下面),将里面的文件位置换成AWStats的实际位置。
  5. 修改文件awstats\wwwroot\cgi-bin\awstats.pl,将第一行的perl路径换成实际位置(如:#!c:\perl\bin\perl.exe)。
  6. 重新启动apache,浏览器中输入http://mysite/awstats/awstats.pl?config=mysite,查看AWStats是否正常运行。

日志分析的相关配置

在完成基础配置后AWStats已可以正常运行,但由于没有进行日志分析,将看不到任何的统计信息。

  1. Apache默认只使用一个日志文件,如果日志文件太大,将给日志分析带来极大的负担。修改Log配置,将Log配置修改为CustomLog "|bin/rotatelogs.exe -l logs/access%Y-%m-%d.log 86400" combined。每天生成一个文件。

  2. Apache的日志文件格式LogFormat,如果包含LogFormat "%h %l %u %t \"%r\" %>s %b" common,则注释掉,不然日志信息中将不包含User-Agent信息(浏览器/操作系统类型等)。

  3. Awstats的站点配置文件在awstats\wwwroot\cgi-bin,配置文件名字为 awstats.你的站点名字.conf(如:awstats.mysite.conf)。
  4. 修改LogFile配置Apache的日志位置和文件名的格式,文件格式需要和apache的日志文件格式相匹配。如:LogFile="D:/AppServ/Apache2.2/logs/access%YYYY-24-%MM-24-%DD-24.log"。这里表示日志格式为2008-10-10.log,-24表示24小时以前,也就是前一天日志文件。

  5. LogFormat默认为1,如果Apache日志中没有包含User-Agent信息,则需要将LogFormat设置为4。

  6. 进入目录awstats\wwwroot\cgi-bin,执行脚本awstats.pl -config=mysite -update -lang=cn完成日志分析。如果日志分析成功,重新进入AWStats,将可看到服务器的访问信息。
  7. 在windows的计划任务中创建任务awstats.pl -config=mysite -update -lang=cn,设置每天晚上对前一天的日志进行分析。

Awstats访问权限设置

Awstats默认情况系任何人都可以访问。可以通过apache限制Awstats限制只有登陆的用户才能访问。

  1. 在Apache的配置文件,Awstats的目录权限配置中添加访问权限控制。

    <Directory "D:/AppServ/awstats/wwwroot">
    Options None
    AllowOverride None
    AuthName "admin onssw Access"
    Order allow,deny
    Allow from all

    AuthType Basic
    AuthName "Restricted Files"
    AuthUserFile D:/AppServ/Apache2.2/conf/passwords
    Require user admin
    </Directory>

  2. 使用Apache2.2\bin\htpasswd.exe生成密码问题。htpasswd -c D:\AppServ\Apache2.2\conf\passwords admin。

  3. 在配置好Awstats的访问权限后,每次访问Awstats将被要求登陆。输入用户名admin和刚设置的密码,完成登陆验证。