在FreeBSD中使用AWStats分析apache日志

目录

Awstats

Awstats是什么

Awstats是一个免费非常简洁而且强大有个性的统计工具。它可以统计您站点的如下信息:

  1. 访问量,访问次数,页面浏览量,点击数,数据流量等
  2. 精确到每月、每日、每小时的数据
  3. 访问者国家
  4. 访问者IP
  5. Robots/Spiders的统计
  6. 访客持续时间
  7. 对不同Files type 的统计信息
  8. Pages-URL的统计
  9. 访客操作系统浏览器等信息
  10. 其它信息(搜索关键字等等)

Awstats安装

FreeBSD从10开始有了类似apt-get、yum的包管理系统,Awstats的安装也就变得容易了很多。首先:

sudo pkg search awstats

会返回如下结果(版本号可能会有不同):

awstats-7.2_1,1
jawstats-0.7.b

而后

sudo pkg install awstats-7.2_1,1

到此Awstats安装完毕,完成后会有一段提示,先拷贝下来,稍后配置apache时要用到。

Please add the following to your apache config, and restart.

#
# Directives to allow use of AWStats as a CGI
#
Alias /awstatsclasses "/usr/local/www/awstats/classes/"
Alias /awstatscss "/usr/local/www/awstats/css/"
Alias /awstatsicons "/usr/local/www/awstats/icons/"
ScriptAlias /awstats/ "/usr/local/www/awstats/cgi-bin/"

#
# This is to permit URL access to scripts/files in AWStats directory.
#
<Directory "/usr/local/www/awstats/">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

*****************************************************************

If you are upgrading from AWStats 6.4 or older, please note the following:

If you used the geoip plugin, you must edit your AWStats config file
to change the line
 LoadPlugin="geoip GEOIP_STANDARD"
into
 LoadPlugin="geoip GEOIP_STANDARD /pathto/GeoIP.dat"

*****************************************************************

Cronolog

Cronlog是什么

使用cronolog可以格式化日志文件的格式,比如按时间分割,易于管理和分析。

Cronlog安装及使用

Cronlog的安装同Awstats,先通过pkg搜索cronlog,拿到包含版本号的完整名称后,再通过 pkg install 安装。
安装完成以后需要对apache进行适当配置,修改httpd.conf文件,主要注意以下几点:

  1. 自定义日志格式
CustomLog "|/usr/local/sbin/cronolog /opt/apache/logs/access_log.%Y%m%d" combined
  1. 如果存在多个虚拟站点,可以考虑在VirtualHost进行相应设置
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /www/docs/dummy-host.example.com
ServerName dummy-host.example.com
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common

为要统计的站点建立Awstats配置文件

进入 /usr/local/www/awstats/tools/ ,执行 ./awstats_configure.pl 之后将会进入一个交互的配置过程,将会检查awstats的安装目录,httpd服务的配置路径,日志记录格式等系统环境,并提示用户指定站点名称,设置配置文件路径。
在指定目标站点名称www.xiaoguo.net后会在 /etc/awstats/ 目录下生成一个= awstats.www.xiaoguo.net.conf= 文件,我们还需要对其做进一步的修改。修改的内容主要包括指定要分析的web日志文件和指定存放统计数据的目录。

# 注意日志文件的格式,小过在这里通过cronolog按月对apache的日志进行了分割
LogFile="logs/xiaoguo.net-access_log.%YYYY-1%MM-1"
# 指定统计数据的目录
DirData="/var/lib/awstats"

访问AWStats分析系统

在浏览器中输入http://www.xiaoguo.net/awstats/awstats.pl?config=www.xiaoguo.net 即可访问AWStats分析。

访问限制

正如上面这个链接所见,知道链接的人都可以看到站点的统计数据,如果不想这样,可以在apache中设置访问限制

AuthType Basic //验证类型
AuthName “Awstats Analyze” //验证窗口显示的标题
AuthUserFile /var/www/passwd.awstats //密码文件
Require valid-user //可以指定可以访问的用户名

设置计划任务

%crontab -e     //设置计划任务,每天晚上23点58分更新一次
# ---类似这样------
/usr/local/www/awstats/tools/awstats_buildstaticpages.pl -config=www.xiaoguo.net -update -lang=cn -awstatsprog=/usr/local/www/awstats/cgi-bin/awstats.pl -dir=/var/www/awstats/xiaoguo.net/
# ----------------

截图一枚

apache-awstats.png


本页最后更新时间:2015-11-11 Wed 12:23.
小过的布拉格 - Copyright©2013-2017 - @xiaoguo - Powered by Emacs 26.1 (Org mode 9.1.1)
行路难,行路难, 多歧路,今安在。长风破浪会有时,直挂云帆济沧海。