AWStats

Apacheのログ解析ソフトです。
(一応、squidのアクセス解析なども出来ますが、外部公開などをしている訳でもないので試していません)
同様のソフトにWebalizerなどがありますが、情報量やデフォルト状態での見やすさはAWStatsのほうが上だと思います。

FreeBSDのApache2.4の場合、デフォルトのログでは拾える情報が少なくなってしまうので、情報をフルに引き出したい場合はApacheのログ出力形式を変更する必要があります。その辺のことは、このページにて後記します。

AWStatsはperlプログラムの為、ApacheにてCGIが動作するように設定する必要があります。この辺の設定については、PHPの解説の『☆http.confの編集』で書かれている内容で問題ないと思います。

☆ インストール

perlプログラムなので、手動でインストールすることも可能なのでしょうが、portsにてインストール可能なので、こちらでインストールします。

cd /usr/ports/www/awstats/
make config-recursive
make install clean && rehash

☆ リダイレクト設定

portsからインストールした場合、プログラムが置かれる場所がApacheでのルートディレクトリと異なることになるので、Apache側からアクセ スできるように設定を作成します。httpd.confに直接設定を書き込んでも問題ありませんが、新規ファイルを作成して、そこに設定を追記することに します。

vi /usr/local/etc/apache24/Includes/awstats.conf

awstats.confの『awstats』の部分の名前は何でも良いが『.conf』は絶対に省略や変更はしない。

設定自体は、portsでインストールした直後に具体例が表示されているので、Apache22の場合は、それをそのまま使えば良い。Apache24の場合は、ほんの少し設定を変更します。設定内容自体は全く同じです。

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/"

<Directory "/usr/local/www/awstats/">
# Options None
# AllowOverride None
# Order allow,deny
# Allow from all
Require all granted # Apache24用の設定
</Directory>

設定が終わったら、apacheを再起動する。

/usr/local/etc/rc.d/apache24 restart

☆ 設定ファイルの作成

『awstats.model.conf』と言うサンプルファイルを『awstats.好きな名前.conf』と言う名でコピーする。私の環境の場合は『awstats.noichigo.conf』とした。

cd /usr/local/www/awstats/cgi-bin/
cp awstats.model.conf awstats.noichigo.conf
chmod 644 awstats.noichigo.conf

☆ 設定ファイルの編集

vi awstats.noichigo.conf

とりあえず、動作確認のための最低限の設定をします。
該当箇所を編集する。

LogFile="/var/log/httpd-access.log"

apacheのログファイルを指定。
apacheのログ関連の設定を弄ってないなら『/var/log/httpd-access.log』となる。

LogFormat=4

FreeBSDのapache24のログを、ディフォルト状態で使ってると『1』のままではログが読み込めない。
『4』に設定すればログは読み込めるようにはなるが、ブラウザやOSの情報などは表示されない。
ログローテーション等も含め、apacheのログに関連した設定は、一度、全体的に考えた方が良いのかも知れない。

SiteDomain="noichigo.moe.hm"

ドメインの設定。
アクセスされたサイト内のページヘのリンクに使われるのだと思われる。

☆ データの反映

/usr/local/www/awstats/cgi-bin/awstats.pl -update -config=awstats.noichigo.conf

ブラウザでの確認、設定変更の確認、全てが終わった後のcrontabへの登録と、しばらく必要になるコマンドなので、何処かに控えておいた方が良い。

☆ ブラウザでの確認

ブラウザのURL記入欄にアドレスを記入。

http://noichigo.moe.hm/awstats/awstats.pl?config=awstats.noichigo.conf

(アクセス制限されています。我が家の環境以外からは見られません)

数字が反映されていれば成功。

ページが表示されても数字が反映されていない場合はURLを再確認。
エラーが出る、プログラムがテキスト表示される等の場合はapacheのCGIに関連した設定を再確認。
(モジュールが有効化されているか、CGIが動作する設定にされているか、拡張子がplでもCGIとして認識するか、など)

後はページを見ながら、必要な項目&不必要な項目に関連した設定をして行く事になる。
こちらのページで、各設定の内容が詳しく紹介されています。
http://www.bflets.dyndns.org/Tools/AWStatsDocs_JP/awstats_config_jp.html

項目の表示数変更などに関しては特に問題はないが、表示されるディレクトリやファイルを非表示にする設定などに関しては『/usr/local/www/awstats/cgi-bin/』に新規に作成される、テキストファイル(ログファイル)をいちいち削除してから、ログの再読み込みをさせる必要がある。

☆ apacheのログ設定

『LogFormat』の設定を『1』にしないと、ブラウザやOSの情報などが表示されないため、それらも表示するようにApacheのログファイルの形 式を簡易的に追加設定する。追加なので、そのまま使い続けるとログが倍の容量増えていくことになるので、それまで使っていたログを削除する決心がついたら 削除したらいい。この機会に、ログローテーションの設定なども考えると良いかもしれない。

vi /usr/local/etc/apache24/httpd.conf
CustomLog "/var/log/httpd-access2.log" combined

既に『CustomLog』が設定されている下にでも、設定を追加する。

apacheの再起動

/usr/local/etc/rc.d/apache24 restart

後はAWStatsの設定ファイル(の[LogFile]と[LogFormat]の設定)を変更し、ディレクトリ内([/usr/local/www/awstats/cgi-bin/])のTXTファイルを削除し、しばらく放置した後にAWStatsにApacheのログを読み込ませる。エラーが出なければ成功して るはず。最後にブラウザで確認。OSやブラウザの情報が表示されていれば成功です。

 

役に立ちましたか?
  • 役に立った (0)
  • 少しだけ (0)
  • これじゃない! (0)