TOP » Apache HTTP Server で Web サーバー構築 » ログファイルの管理 » AWStats でアクセスログの解析

AWStats でアクセスログの解析

AWStats は Perl スクリプトを使って Web サーバーのアクセスログを解析し、その統計情報をブラウザを使って閲覧できるようにするために HTML ファイルに出力するツールです。
AWStats official web site から AWStats のソースファイルをダウンロードしてインストールする方法を紹介します。

AWStats のダウンロードとインストール

AWStats のソースファイルを AWStats official web site からウンロードしてインストールを行います。

# wget -P /usr/local/src http://awstats.sourceforge.net/files/awstats-6.5.tar.gz
# cd /usr/local/src
# tar xzf awstats-6.5.tar.gz -C /home/httpd
# ln -sfn /home/httpd/awstats-6.5 /home/httpd/awstats

Apache をユーザー権限で実行している場合は、AWStats ディレクトリの所有者を Apache を実行するユーザーに変更します。

# chown -R httpd:httpd /home/httpd/awstats-6.5

AWStats の設定

AWStats の設定ファイルとデータベースファイルを格納するディレクトリを作成します。

# mkdir -p /home/httpd/awstats/etc
# mkdir -p /home/httpd/awstats/data

AWStats のソースファイルの中に AWStats の設定ファイルの雛形が保存されているので、その雛形を awstats.ホスト名.confという名前でコピーして AWStats の設定ファイルを作成します。

# cp /home/httpd/awstats/wwwroot/cgi-bin/awstats.model.conf /home/httpd/awstats/etc/awstats.honana.com.conf

コピーした AWStats 設定ファイルを以下のように編集します。

# vi /home/httpd/awstats/etc/awstats.honana.com.conf
/home/httpd/awstats/etc/awstats.honana.com.conf
44 行目辺り
# Example: “/var/log/access_log.%YYYY-0%MM-0%DD-0.log”
# Example: “C:/WINNT/system32/LogFiles/W3SVC1/ex%YY-24%MM-24%DD-24.log”
# You can also use a pipe if log file come from a pipe :
# Example: “gzip -d </var/log/apache/access.log.gz |”
# If there is several log files from load balancing servers :
# Example: “/pathtotools/logresolvemerge.pl *.log |”
#
LogFile=”/virtual/honana.com/logs/%YYYY-0/%MM-0/access_log”解析するログファイルのパス(cronolog を使った場合の設定)

148 行目辺り
# Example: “myintranetserver”
# Example: “www.domain.com”
# Example: “ftp.domain.com”
# Example: “domain.com”
#
SiteDomain=”honana.com”解析するウェブサーバーのドメイン名

183 行目辺り
# 0 – No DNS Lookup
# 1 – DNS Lookup is fully enabled
# 2 – DNS Lookup is made only from static DNS cache file (if it exists)
# Default: 2
#
DNSLookup=1DNS の逆引きを行う場合は 1 を指定

198 行目辺り
# Example: “/var/lib/awstats”
# Example: “../data”
# Example: “C:/awstats_data_dir”
# Default: “.”          (means same directory as awstats.pl)
#
DirData=”/home/httpd/awstats/data”AWStats のデータベースファイルを保存するディレクトリ

215 行目辺り
# Relative or absolute web URL of your awstats icon directory.
# If you build static reports (“… -output > utputpath/output.html”), enter
# path of icon directory relative to the output directory ‘outputpath’.
# Example: “/awstatsicons”
# Example: “../icon”
# Default: “/icon” (means you must copy icon directories in “/mywwwroot/icon”)
#
DirIcons=”/awstatsicons”アイコンファイルが格納されているディレクトリ

252 行目辺り
#  0 – Never allowed
#  1 – Allowed on CLI only, -Year- value in combo is not visible
#  2 – Allowed on CLI only, -Year- value in combo is visible but not allowed
#  3 – Possible on CLI and CGI
# Default: 2
#
AllowFullYearView=3年間統計情報を出力する場合は 3 を指定

342 行目辺り
# When this parameter is define to something, the IP address of the user that
# read its statistics from a browser (when AWStats is used as a CGI) is
# checked and must match one of the IP address values or ranges.
# Change : Effective immediatly
# Example: “127.0.0.1 123.123.123.1-123.123.123.255”
# Default: “”
#
AllowAccessFromWebToFollowingIPAddresses=”192.168.0.1-192.168.0.255″アクセスを許可するホスト

877 行目辺り
# Set your primary language (ISO-639-1 language codes).
# Possible value:
#  Albanian=al, Bosnian=ba, Bulgarian=bg, Catalan=ca,
#  Chinese (Taiwan)=tw, Chinese (Simpliefied)=cn, Croatian=hr, Czech=cz,
#  Danish=dk, Dutch=nl, English=en, Estonian=et, Euskara=eu, Finnish=fi,
#  French=fr, Galician=gl, German=de, Greek=gr, Hebrew=he, Hungarian=hu,
#  Icelandic=is, Indonesian=id, Italian=it, Japanese=jp, Korean=ko,
#  Latvian=lv, Norwegian (Nynorsk)=nn, Norwegian (Bokmal)=nb, Polish=pl,
#  Portuguese=pt, Portuguese (Brazilian)=br, Romanian=ro, Russian=ru,
#  Serbian=sr, Slovak=sk, Slovenian=si, Spanish=es, Swedish=se, Turkish=tr,
#  Ukrainian=ua, Welsh=cy.
#  First available language accepted by browser=auto
# Default: “auto”
#
Lang=”jp”統計情報を日本語で表示する場合は jp を指定

1126 行目辺り
# Choose if you want the week report to start on sunday or monday
# Possible values:
# 0 – Week start on sunday
# 1 – Week start on monday
# Default: 1
#
FirstDayOfWeek=0週の始まりを日曜日にする場合は 0 を指定

以下省略

Apache の設定

Apache の設定ファイル httpd.conf ファイルを編集して AWStats に関する設定を行います。

# vi /usr/local/httpd/conf/httpd.conf
/usr/local/httpd/conf/httpd.conf
<Directory “/home/httpd”>AWStats インストール時に作成したシンボリックリンクを許可
    Options FollowSymLinks
</Directory>

Alias /awstatsclasses “/home/httpd/awstats/wwwroot/classes/”
Alias /awstatscss “/home/httpd/awstats/wwwroot/css/”
Alias /awstatsicons “/home/httpd/awstats/wwwroot/icon/”
ScriptAlias /awstats/ “/home/httpd/awstats/wwwroot/cgi-bin/”
<Directory “/home/httpd/awstats/wwwroot”>
    Options None
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 192.168.0
</Directory>

Apache の再起動

Apache の設定ファイルを変更した後は Apache を再起動する必要があります。

# /usr/local/httpd/bin/apachectl graceful

統計の作成と閲覧

AWStats を実行すると、設定ファイル(awstats.honana.com.conf)を読み込んで、データベースの作成と更新を行い、ログファイルを分析した情報をデータディレクトリ(DirData パラメーターで指定)に格納します。
AWStats をインストールした直後に行う初回の統計情報の作成は、コマンドラインから手動で行います。

# /home/httpd/awstats/wwwroot/cgi-bin/awstats.pl -config=honana.com -configdir=/home/httpd/awstats/etc -update

今後の更新は cron を使って定期的に行います。
以下のような内容で /etc/cron.hourly/awstats.cron を作成します。

# vi /etc/cron.hourly/awstats.cron
/etc/cron.hourly/awstats.cron
#!/bin/sh
/home/httpd/awstats/wwwroot/cgi-bin/awstats.pl -config=honana.com -configdir=/home/httpd/awstats/etc -update 1>/dev/null 2>&1

作成したスクリプトに実行権限を与えます。

# chmod 755 /etc/cron.hourly/awstats.cron

ウェブブラウザを使って http://honana.com/awstats/awstats.pl?configdir=/home/httpd/awstats/etc のようにアクセスして統計情報閲覧します。

カテゴリー
Fedora のインストール
ネットワーク設定
OpenSSH で SSH サーバー構築
NTP で時刻情報サーバー構築
Apache HTTP Server で Web サーバー構築
MySQL でデーターベースサーバー構築
PostgreSQL でデーターベースサーバー構築
PHP で Web アプリケーションサーバー構築
qmail でメールサーバー構築
Samba でファイルサーバー構築
BIND でネームサーバー構築
Tomcat で Web アプリケーションサーバー構築
ProFTPD で FTP サーバー構築
システム設定
CMS でサイト構築
snort でネットワーク進入探知システム構築
ライブラリのインストール