12. アクセス解析

アクセス解析ツール AWStats導入及び設定

オープンソースのアクセス解析ツールAWStatsを導入することに決定しました。
非常に細かい分析が可能で、無料でこれ以上のツールはないのではないかと思います。


AWStatsの設定は比較的簡単ですよ。
0. 最新版のAWStatsのダウンロード
ダウンロードURLは、http://awstats.sourceforge.net/のページの下の方に[Downlod]へのリンクがあります。
2005.3.9時点では、安定したバージョンが6.4です。セキュリティの問題もあり、必ず、バージョン6.3以降のバージョンを使うようにしましょう。
このバージョンは、はじめから日本語対応されています。(検索のキーワード/フレーズだけは対処が必要)

セキュリティの記事は、Slashdotにあります。
Slashdot : アクセス解析ツールのバグで、人気Blogが改竄される

1. apacheの設定変更
apacheの設定ファイルであるhttpd.confの変更をします。 MacOSXの場合、/etc/httpd/httpd.confです。
取得できる情報はすべてログとして残す設定に変更します。
通常、apacheのログファイルの設定は、デフォルトでは、

  CustomLog "/var/log/httpd/access_log" common

commonとなっていると思いますが、これをコメントアウト(#をつける)して

  CustomLog "/var/log/httpd/access_log" combined

のコメントアウトを取り、これを生かします。

VirtualHostの設定をしている場合は、そちらのCustomLogの設定を変更します。
combinedは、OS , ブラウザ、検索キーワード、ホスト名、検索エンジン等のログを残す設定です。 但し、この設定により、ログファイルは倍以上のサイズになるので、注意が必要です。

続きはまた明日書きます。
2. ダウンロードしたファイルの確認
ダウンロードしたファイルは下記の通りのディレクトリ構成になっています。
・docs/
・tools/
・wwwroot/
・README.TXT

wwwrootには、
 ・cgi-bin/
 ・classes/
 ・css/
 ・icon/
 ・js/
が含まれています。

3. CGIファイルのコピー
まず、wwwroot/cgi-bin/以下を、cgiのディレクトリの配下にコピーします。
 ・awredir.pl
 ・awstats.model.conf
 ・awstats.pl
 ・lang/
 ・lib/
 ・plugins/

MacOS Xであれば、
/Library/WebServer/CGI-Executables/
の下です。私は、整理のために、下記の通りディレクトリを作り、コピーしました。

/Library/WebServer/CGI-Executables/awstats/

4. perlのディレクトリの確認及び変更
コピーしたcgiファイルは、perlが必要で、そのディレクトリが、awstats.plファイルに記述されています。
perlのディレクトリを確認してください。
/usr/bin/perl
であれば変更の必要はありません。
別のディレクトリであれば、
awstats.plの先頭にある#!/usr/bin/perlを正しいディレクトリに書き換えてください。

5. iconファイルのコピー
次に、アイコンファイルのコピーです。
コピーはディレクトリごとで、ダウンロードしたファイルの
 ・wwwroot/icon
です。

ブラウザーや国旗やOSなどのアイコンが含まれており、分析結果の中で使われる大事なファイルです。
MacOS Xであれば、
/Library/WebServer/Documents/
の下です。私は、整理のために、下記の通りディレクトリを作り、コピーしました。

/Library/WebServer/Documents/awstats/icon/


6. コンフィグレーションファイル名の変更
次に、先ほどコピーしたcgiファイルの中に含まれるコンフィグレーションファイルの変更をします。
awstats.model.confというファイルがありますが、 model部分を自分のサーバ名に変更します。
例えば、私の自宅のサーバ名は、 blog.kitamura.fmですが、その場合、下記の通り、ファイル名を変更します。
awstats.blog.kitamura.fm.conf

model部分は、サーバ名で検索するようになっています。

7. 設定ファイルのパラメータ設定
awstats.blog.kitamura.fm.confのパラメータ設定を行います。
最低限の設定は、LogFile , DirIcons , SiteDomain ,DirDataの3つです。
エディタで、awstats.blog.kitamura.fm.confを開き

LogFileは、ログファイルのフルパスを記述します。
MacOS Xの場合、/var/log/httpd/access_logです。

LogFile="/var/log/httpd/access_log"

DirIconsは、5. iconファイルのコピーで設定したディレクトリです。
絶対パスではなく、公開されたディレクトリからのパスです。よって、下記の通りになります。

DirIcons="/awstats/icon"

最後に、SiteDomainの設定ですが、これは、ドメイン名です。

私の場合、SiteDomain="blog.kitamura.fm"

DirDataは分析結果を書き出すディレクトリです。何も書かなければ、cgi-binファイルと同じディレクトリに書き込まれます。

以上で基本設定は終わりです。


8. 検索キーワード/フレーズの文字化け解消
どのようなキーワード/フレーズで検索されたかログがとれていますがEUCとか混在し、表示はUTF8なので、ほぼ確実に、検索キーワード/フレーズについては、文字化けをします。
これを解消するのが、Jcode.pmです。これは、CPANに正式登録されていて非常に便利なライブラリです。
URLは下記の通りで、まず、これをダウンロードしてください。

CPAN Jcode.pm

ダウンロードした後に、下記の通り、スーパーユーザ権限でコマンドを実行します。

# perl Makefile.PL
# make
# make install

これで、Jcode.pmのインストールは完了です。

次に、cgiとしてコピーしたawstats.plの編集です。まず、


use Jcode ;

を先頭の行に追加します。(#!/usr/bin/perlより後)

次は、sub DecodeEncodedString を検索してください。
初期は次のようになっています。


sub DecodeEncodedString {
my $stringtodecode=shift;
$stringtodecode =~ tr/¥+/ /s;
$stringtodecode =~ s/%([A-F0-9][A-F0-9])/pack("C", hex($1))/ieg;
return $stringtodecode;
}

これを

sub DecodeEncodedString {
my $stringtodecode=shift;
$stringtodecode =~ tr/¥+/ /s;
$stringtodecode =~ s/%([A-F0-9][A-F0-9])/pack("C", hex($1))/ieg;

+ Jcode::convert(¥$stringtodecode, "utf8");
return $stringtodecode;
}

Jcodeで変換する部分を追加します。

これで文字化けは解消されます。


9. 統計情報の初期作成
初期処理は時間がかかるので、cgiではなくコマンドで実行します。

./awstats.pl -config=HOSTNAME -update

私の場合、./awstats.pl -config=blog.kitamura.fm -update

しばらくすると、DirDataのディレクトリに分析結果が書き込まれます。

10. アクセス制限設定
セキュリティの設定には、いくつかの方法があり、ここではIPアドレスでの設定制限をご紹介します。
私の場合、家の中の、Macからしかアクセスしないので、ローカルIPアドレスのみ許可することにしました。
設定ファイルは、先ほどと同様、awstats.blog.kitamura.fm.confです。
パラメータは、AllowAccessFromWebToFollowingIPAddressesです。

AllowAccessFromWebToFollowingIPAddresses="127.0.0.1 192.168.1.1-192.168.1.255"

11. crontabの設定
分析ファイルを定期的に更新することが必要になりますが、これは、crontabで行うことにします。

crontab -e

これは、viエディタですが、viエディタの使い方は事前に勉強してくださいね。
例えば、10分ごとに分析ファイルを更新する場合は、

*/10 * * * * /Library/WebServer/CGI-Executables/awstats/awstats.pl -config=blog.kitamura.fm -update > /dev/null 2>&1

を追加してください。

> /dev/null 2>&1を除くと、結果をメールですべて通知してくれます。
10分単位で、メールが来ると大変なので、しばらく正常動作するまで様子を見て、うまく行っていることがわかってから追加してもいいかもしれませんね。

12. 分析結果の確認
分析結果の確認は、ブラウザから行います。

http://HOSTNAME/cgi-bin/awstats.pl

これで、無事見ることができます!

アクセス解析ツールを変更

今までアクセス解析ツールとして、無料の忍者ツールをつかっていましたが、忍者ツールを使うのをやめました。


理由としては3つあり
1.忍者ツールのアイコンが、強制的にコンテンツの上に重なり、コンテンツを見えなくする。
2.リンクするときに、ALTが指定があり、忍者ツールのリンクポピュラリティのアップのために使われていたことに気がついた。
3.忍者ツールより、もっと高機能の解析ツールがオープンソースで公開されている。
ということで、しばらくお世話になりましたが、忍者ツールを卒業することにしました。
忍者ツール様ありがとうございました。

やはり、自宅でサーバ立ち上げているのですから、「自分でやる!」という前向きに精神で、オープンソースのAWStatsを利用することに決定しました。

<関連サイト>
AWStats official web site Free real-time logfile analyzer to get advanced statistics (GNU GPL).

おすすめ
shuffle04_125_125
リンク
blog.kitamura.fm/mt/server/
Syndicate this site (XML)


Ads
Powered by
Powered by Apple Computer's
Macintosh with Darwin





Powered by MySQL that is the world's most popular open source database.



Powered by PHP that is a scripting language.



Powerd by Movable Type
with MT-Blacklist