印刷用表示へ切り替え 通常表示へ切り替え 更新履歴を表示 更新履歴を隠す
Linux Webalizer のインストール

Webalizer は,Web のアクセス統計を表示してくれるフリーのソフトウェア。Vine Linux 3.1 にも日本語化されたパッケージが用意されているが,全てが日本語化されてしまっているので,表示が見づらい。そこで,検索語だけ日本語化されているパッケージを導入する。

■ ■ ■

Web サーバのアクセス統計情報を集計するソフトウェアに Webalizer がある。Web + Analyzer なのに「Webanalyzer」という名前でないのが疑問ではあるが,それは単に趣味の問題。集計情報は見やすくまとまっている。

Vine Linux Plus には Webalizer の日本語化されたパッケージがある。--with-language=japanese オプションをつけてコンパイルされたものである。しかし,このオプションをつけると,翻訳できる用語はすべて日本語化されてしまう。「Top x of xx URLs」は「トップ x of xx 全URL」と表示され,とても見づらくて気持ちが悪い。Webalizer の日本語化で一番必要なのは,検索文字列の日本語化である。つまり,自分のサイトがどんな言葉で検索されたのかが分かるだけでよい。これが日本語化されていないと,日本語の検索文字列は「%E6%A4%9C%E7%B4%A2」というパーセント表示か,「\16進」などのエスケープされた文字列で表示されてしまう。

日本語の検索文字列を表示させる他の方法としては,Webalizer に Apache のログファイルを直接読み込ませるのではなく,文字列変換したログファイルを読み込ませる方法がある。しかし,バッチ的に変換しなければならないし,ログファイルをほとんどそのままコピーすることになるので容量も倍になってしまうという欠点がある。

webalizerの検索語の日本語対応の話 では,検索語だけが日本語対応しているパッケージを配布してくれているので,これをインストールする。パッケージは SRPM の形式になっているので,自分でコンパイルする必要がある。

$ rpm --rebuild webalizer-2.01_10-1tpu3.src.rpm
webalizer-2.01_10-1tpu3.src.rpm をインストール中
エラー: ビルド依存性の欠如:
        gd-devel   は webalizer-2.01_10-1tpu3 に必要とされています
        libpng-devel   は webalizer-2.01_10-1tpu3 に必要とされています
        db3-devel   は webalizer-2.01_10-1tpu3 に必要とされています

コンパイルするためのパッケージが不足している。gd-devel, libpng を Vine Linux 3.1 用のパッケージからインストールする。しかし,db3-devel は用意されていない。db3-devel ライブラリは必要ないので,SRPM の SPEC ファイルを編集してコンパイルすることにする。まず,SRPM を展開する。

$ rpm -ivh webalizer-2.01_10-1tpu3.src.rpm

SPEC ファイル ~/rpm/SPECS/webalizer.spec を編集する。

BuildPrereq: gd-devel, zlib-devel, libpng-devel, db3-devel

の行から db3-devel を削除する。

BuildPrereq: gd-devel, zlib-devel, libpng-devel

コンパイルして,rpm をビルドする。

$ rpm -bb rpm/SPECS/webalizer.spec

パッケージが ~/rpm/RPMS/i386 ディレクトリにできるので,これをインストールする。

# rpm -ivh rpm/RPMS/i386/webalizer-2.01_10-1tpu3.i386.rpm

設定ファイル /etc/webalizer/webalizer.conf には,次のサーチエンジンを登録しておく。

SearchEngine    yahoo.co.jp     p=
SearchEngine    google.co.jp    q=
SearchEngine    search.biglobe.ne.jp    q=
SearchEngine    infoseek.co.jp  qt=
SearchEngine    search.nifty.com        Text=
SearchEngine    goo.ne.jp       MT=
SearchEngine    excite.co.jp    search=

その他,ゴミのようなリファラが統計情報を汚すので,Ignore Referrer ディレクティブで排除する(nlog(n): 不要なリファラを無視したい)。設定ファイルについては Webalizer の設定. (FreeBSD) [fkimura.com] が詳しい。

Webalizer をインストールすると,/etc/cron.daily に 00webalizer ができる。1日に1回 Webalizer を動作させるためである。これを真似て,1時間に1度 Webalizer が動作するように,/etc/cron.hourly/00webalizer ファイルを作成し,次の内容を書いておく。cron で処理した結果を抑止するために,結果を /dev/null に出力している(1日に24通メールが届いてしまうので)。複数の設定ファイルがある場合(webalizer.nlogn.conf と webalizer.foo.conf ),/etc/webalizer に cd してからでないとうまく動作しなかった。

#! /bin/bash
# update access statistics for the web site

cd /etc/webalizer

if [ -s /var/log/httpd/nlogn_access_log ] ; then
    /usr/bin/webalizer -c webalizer.nlogn.conf >/dev/null 2>&1
fi

if [ -s /var/log/httpd/foo_access_log ] ; then
    /usr/bin/webalizer -c webalizer.foo.conf >/dev/null 2>&1
fi

exit 0

00webalizer ファイルには実行許可をつけておくことを忘れずに。

# chmod 755 /etc/cron.daily/00webalizer

追記:
この手順を nlog(n): 日記サーバ移行計画 に追加する。

Posted by n at 2005-04-09 21:06 | Edit | Comments (0) | Trackback(0)
Trackbacks

  • 「手違いで複数トラックバックを送ってしまった!」という場合でも気にしないでください (重複分はこちらで勝手に削除させていただきます)
  • タイムアウトエラーは,こちらのサーバの処理能力不足が原因です (詳細は トラックバック送信時のエラー をご覧ください)
  • トラックバックする記事には,この記事へのリンクを含めてください(詳細は 迷惑トラックバック対策 をご覧ください)
Comments
Post a comment
  • 電子メールアドレスは必須ですが,表示されません (気になる場合は「メールアドレスのような」文字列でもOKです)
  • URL を入力した場合はリンクが張られます
  • コメント欄内ではタグは使えません
  • コメント欄内に URL を記入した場合は自動的にリンクに変換されます
  • コメント欄内の改行はそのまま改行となります
  • 「Confirmation Code」に表示されている数字を入力してください (迷惑コメント対策です)


(必須, 表示されます)


(必須, 表示されません)


(任意, リンクされます)


Confirmation Code (必須)


Remember info (R)?