XREAでのアクセス解析にAWStatsを入れてみました。
参考にさせていただいたのは以下の情報です。いつもいつも有益な情報に感謝。
各所に${ID}、${VHOST}と書いてますが、そのままでは動きませんので念のため。
ディレクトリ配置決め
XREAではCGI設置ディレクトリに制限はなく、拡張子を.cgiにすればOKとのことなので/awstatsというディレクトリ以下に一式配置することにします。
物理ディレクトリ
${ID}はXREAでのアカウント名、${VHOST}はawstatsを配置する仮想ホストです。public_html直下に配置してもかまいません。
/virtual/${ID}/awstats
/virtual/${ID}/public_html/${VHOST}/awstats
URLパス
/awstats
/awstats/classes
/awstats/css
/awstats/icon
/awstats/js
/awstats/lang
/awstats/lib
/awstats/plugins
ソース展開、ディレクトリ変更
AWStatsのソースを展開してディレクトリ構造を前述の状態に変更します。
$ tar xzvf awstats-6.5.tar.gz $ cd awstats-6.5/wwwroot $ mv cgi-bin awstats $ mv classes awstats/ $ mv css awstats/ $ mv icon awstats/ $ mv js awstats/
config作成
awstats.model.confをコピーして、解析対象サイト毎のconfigファイルを用意します。
$ cd /awstats $ cp awstats.model.conf awstats.www.example.com.conf $ vi awstats.www.example.com.conf $ diff -U0 awstats.model.conf awstats.www.example.com.conf --- awstats.model.conf 2005-10-31 00:56:38.000000000 +0900 +++ awstats.www.example.com.conf 2006-05-30 21:41:37.020217600 +0900 @@ -51 +51 @@ -LogFile="/var/log/httpd/mylog.log" +LogFile="/virtual/${ID}/log/www.example.com.log" @@ -153 +153 @@ -SiteDomain="" +SiteDomain="www.example.com" @@ -168 +168 @@ -HostAliases="localhost 127.0.0.1 REGEX[myserver\.com$]" +HostAliases="localhost 127.0.0.1 REGEX[www\.example\.com$]" @@ -203 +203 @@ -DirData="." +DirData="/virtual/${ID}/awstats" @@ -212 +212 @@ -DirCgi="/cgi-bin" +DirCgi="/awstats" @@ -222 +222 @@ -DirIcons="/icon" +DirIcons="/awstats/icon" @@ -796 +796 @@ -MiscTrackerUrl="/js/awstats_misc_tracker.js" +MiscTrackerUrl="/awstats/js/awstats_misc_tracker.js" @@ -1208 +1208 @@ -StyleSheet="" +StyleSheet="/awstats/css/awstats_bw.css" @@ -1413 +1413 @@ -#LoadPlugin="graphapplet /awstatsclasses" # EXPERIMENTAL FEATURE +LoadPlugin="graphapplet /awstats/classes" # EXPERIMENTAL FEATURE
それからawstats.plは拡張子.cgi(awstats.cgiなど)にリネームしておきます。
XREAにアップロード
/awstats一式をXREAにアップロードします。
データディレクトリ(DirDataで指定した/virtual/${ID}/awstats)も用意してパーミッションを707に設定しておきます。
アクセス
http://${VHOST}/awstats/awstats.cgi?config=www.example.com などとすればアクセスできます。
最初の状態ではログが一切読み込まれていない状態なので、configでAllowToUpdateStatsFromBrowser=1
を指定してブラウザから更新するか、次で設定するcron実行を待ちます。
cron設定
ウェブから更新かけることも可能ですが、ログはデイリーで吐き出されてますので、そのタイミングにあわせてcron処理をおこなうようにします。
ログのタイムスタンプをみると、朝3:40~3:50ぐらいに切り替えがおこなわれているようですので、朝5:00に以下のスクリプトを起動するよう登録しました。
#!/usr/bin/perl sites="www.example.com www.example.net" cd /virtual/${ID}/public_html/${VHOST}/awstats || exit 0 for sitename in $sites; do /usr/bin/perl ./awstats.cgi -config=$sitename -update done exit
Sorry, the comment form is closed at this time.