ウェブ統計 · 1 min read · Nov 26, 2025

Debian Lenny上でAWStatsとJAWStatsを使用してウェブサイト統計を生成する

Debian Lenny上でAWStatsとJAWStatsを使用してウェブサイト統計を生成する

バージョン 1.0
著者: Falko Timme
Twitterでフォローしてください

このチュートリアルでは、Debian Lennyウェブサーバー上でAWStatsとJAWStatsを使用してウェブサイトの統計を生成する方法を説明します。AWStatsは、高度なウェブサーバー統計を生成するための無料で強力な機能を備えたツールです。JAWStatsはAWStatsと連携して動作し、ウェブサイトの訪問者に関する明確で情報豊富なチャート、グラフ、テーブルを生成します。AWStatsは統計のためのグラフィカルなウェブページを作成できますが、JAWStatsはこのデータをより良く整理された形で提示し、AjaxとFlashを利用しています。

これがあなたにとって機能することを保証するものではありません!

1 前提条件

このチュートリアルでは、www.example.com(エイリアスとしてexample.com、www.example.net、example.netを持つ)というウェブサイトを持ち、ドキュメントルートは/var/www/www.example.com/webです。

2 AWStatsのインストールと設定

AWStatsは以下のようにインストールできます:

aptitude install awstats

その設定は/etc/awstats/ディレクトリにあります。各仮想ホストには、そのディレクトリにawstats..confという名前の設定ファイルが必要です(つまり、私たちのウェブサイトwww.example.comの場合、設定ファイルawstats.www.example.com.confが必要です)。/etc/awstats/awstats.confファイルをテンプレートとして使用できます:

cd /etc/awstats/
cp awstats.conf awstats.www.example.com.conf
vi awstats.www.example.com.conf

次の設定を変更します:

| [...] LogFile="/var/log/apache2/access.log" [...] LogFormat=1 [...] SiteDomain="www.example.com" [...] HostAliases="example.com www.example.net example.net" [...] |

LogFileには、仮想ホストのApacheアクセスログまたは全体のApacheアクセスログ(すべてのサイト用のもの)のパスを含める必要があります。動的なファイル名がある場合(例:日付が含まれている場合、cronologやvloggerによってアクセスログが作成される場合など)、プレースホルダーを使用できます。例えば、次のようにします:

LogFile="/var/log/httpd/access.log_%YYYY-0_%MM-0_%DD-0"

これはAWStats設定ファイルのコメントで次のように説明されています:

“LogFile” には 分析する ウェブ、 ftp または メール サーバーの ログ ファイルが含まれます。
可能な値:フルパスまたはawstats.plディレクトリからの相対パス。
例:”/var/log/apache/access.log”
例:”../logs/mycombinedlog.log”
日付や時間に応じて動的なファイル名が必要な場合は、このファイル名にタグを使用できます(置換はAWStatsの実行開始時に行われます)。
使用可能なタグ:
%YYYY-n  は n 時間前の4桁の年に置き換えられます
%YY-n    は n 時間前の2桁の年に置き換えられます
%MM-n    は n 時間前の2桁の月に置き換えられます
%MO-n    は n 時間前の3文字の月に置き換えられます
%DD-n    は n 時間前の日に置き換えられます
%HH-n    は n 時間前の時間に置き換えられます
%NS-n    は 1970年からの00:00の秒数に置き換えられます
%WM-n    は 月内の週番号(1-5)に置き換えられます
%Wm-n    は 月内の週番号(0-4)に置き換えられます
%WY-n    は 年内の週番号(01-52)に置き換えられます
%Wy-n    は 年内の週番号(00-51)に置き換えられます
%DW-n    は 週内の日番号(1-7、1=日曜日)に置き換えられます
必要に応じてn=24を使用してください(1-7、1=月曜日)
%Dw-n    は 週内の日番号(0-6、0=日曜日)に置き換えられます
必要に応じてn=24を使用してください(0-6、0=月曜日)
現在の年、月、日、時間が必要な場合はnに0を使用してください。
例:”/var/log/access_log.%YYYY-0%MM-0%DD-0.log”
例:”C:/WINNT/system32/LogFiles/W3SVC1/ex%YY-24%MM-24%DD-24.log”
パイプからログファイルが来る場合は、パイプを使用することもできます:
例:”gzip -d ロードバランシングサーバーから複数のログファイルがある場合:
例:”/pathtotools/logresolvemerge.pl *.log |”

おそらくApacheの結合ログ形式を使用しているので、LogFormat=1を使用する必要があります(再度、ファイル内のコメントを確認して正しい形式を見つけてくださいが、ほとんどの場合Apacheの結合ログ形式を使用しています)。

SiteDomain:ウェブサイトの主要なドメインを指定します(この場合はwww.example.com)。

HostAliases:ウェブサイトにアクセスするために使用される他のすべてのドメイン/サブドメインを指定します(この例ではexample.com、www.example.net、example.net)。

次に、AWStatsを9分ごとに実行するcronジョブを作成します:

crontab -e  

| 9,19,29,39,49,59 * * * * /usr/lib/cgi-bin/awstats.pl -config=www.example.com -update >/dev/null |

(動的なアクセスログがある場合、cronologやvloggerによって作成される場合、AWStatsが新しいアクセスログが0:00に作成される前に現在のアクセスログを23:59に処理できるように、cronジョブに59分を含めることをお勧めします。これにより、統計の中で23:59と0:00の間の1分を失うだけです。)

3 JAWStatsのインストールと設定

http://www.jawstats.com/downloadにアクセスし、最新のJAWStatsバージョンをダウンロードし、PCに解凍して、FTPなどを使用してwww.example.comウェブサイト内のディレクトリにアップロードします。このチュートリアルでは、/var/www/www.example.com/web/jawstatsディレクトリにアップロードします。

その後、config.dist.phpの名前をconfig.phpに変更し、修正します:

mv /var/www/www.example.com/web/jawstats/config.dist.php /var/www/www.example.com/web/jawstats/config.php
vi /var/www/www.example.com/web/jawstats/config.php

| "/var/lib/awstats/", "updatepath" => "/usr/lib/cgi-bin/", "siteurl" => "http://www.example.com", "sitename" => "My Example.com Web Site", "theme" => "default", "fadespeed" => 250, "password" => "secret", "includes" => "", "language" => "en-gb" ); ?> |

“change site”リンクを削除したい場合は、$bConfigChangeSitesをfalseに変更します。

ユーザーが自分で統計を更新できないようにしたい場合は、$bConfigUpdateSitesをfalseに設定します。

その後、配列$aConfig[“site1”]をリネームして、サイトの名前($aConfig[“www.example.com”])にします。statspathを/var/lib/awstats/に設定します(末尾のスラッシュを忘れないでください!)、updatepathを/usr/lib/cgi-bin/に、siteurlをhttp://www.example.comに設定し、sitenameの下にウェブサイトの名前を指定します。$bConfigUpdateSitesをtrueに設定した場合のみ、パスワードが必要です(ユーザーがブラウザを介して統計を更新できるようにする場合、このパスワードを入力する必要があります)。

これで完了です - AWStatsのcronジョブが初めて実行された後(トラフィックの多いウェブサイトの場合、時間がかかることがあるので、忍耐強く待ってください)、http://www.example.com/jawstatsで統計にアクセスできます。

以下は、どのように見えるかのいくつかのスクリーンショットです:

4 JAWStats出力ディレクトリのパスワード保護(オプション)

すべての人がウェブサイトの統計にアクセスできるようにしたくない場合は、/var/www/www.example.com/web/jawstatsディレクトリをパスワード保護することをお勧めします。

これを行うには、/var/www/www.example.com/web/jawstatsに.htaccessファイルを作成します:

vi /var/www/www.example.com/web/jawstats/.htaccess

| AuthType Basic AuthName "Members Only" AuthUserFile /var/www/www.example.com/.htpasswd require valid-user |

次に、パスワードファイル/var/www/www.example.com/.htpasswdを作成する必要があります。ユーザー名adminでログインしたいので、次のようにします:

htpasswd -c /var/www/www.example.com/.htpasswd admin

adminのパスワードを入力すれば、完了です!

5 リンク

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。