このページではWebサーバーApache/httpdアクセス解析を行うWebalizer日本語化について初心者/ビギナー向けに解説します。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
webalizerでアクセス解析

Webアクセス解析とは

Webalizer日本語版の導入

Webalizerの基本設定

httpdログの構造を理解する

Apacheでログを振り分ける

検索文字列の日本語化

統計データの見方について

解析データの最適化と分析法

解析スケジュールの設定

デフォルト以外のアクセス解析


Webalizerの表示を日本語化しましょう

WBEL CentOS で既に利用可能になっている Webalizer は、残念なことに表示が英語になっています。

実はWebalizer自身は日本語表記にも対応しています。

しかし、 OS のインストール時に デフォルト で使われるWebalizerの RPM ファイル自身が ソース から英語版として作成されているため、そのままでは日本語表記ができなくなっているわけです。

英語表記のままでも構わなければもちろんこのパートの作業は必要ありません。

デフォルトのWebalizer(英語表記)
デフォルトの"Webalizer"(英語表記)

日本語を表示するWebalizerを 構築中のLinuxサーバー にインストールするには、

1.既にインストールされている英語版のWebalizerを アンインストール する。

2.Webalizerのソースプログラムを入手する。

3.Webalizerのソースプログラムから日本語版WebalizerのRPMを作成するときに必要な設定を行う。

4.WebalizerのソースプログラムからRPMを作成するための補助プログラムを 構築中のLinuxサーバー にインストールする。

5.日本語版WebalizerのRPMを作成する。

6.日本語版WebalizerのRPMをインストールする。

7.設定ファイルの内容をバックアップから書き戻す。

という手順が必要になります。

手順は多いですが作業そのものは決して難しいものではありませんし、この作業によって

「RPMのソースプログラムの設定ファイルを書き換え、RPMを作成しなおす。」

という、今後に役立つ手順を学ぶことにもなりますから、やってみて損はないと思います。

Webalizerは、WBELやCentOSの インストール WBEL3のインストールについて CentSO3のインストールについて WBEL4のインストールについて CentSO4のインストールについて CentSO5のインストールについて のときに CD に予め準備されているパッケージがインストールされ、 WBEL3及びCentOS3では "webalizer-2.01_10-15.ent.[アーキテクチャ名].rpm" が、WBEL4及びCentOS4では "webalizer-2.01_10-25.ent.[アーキテクチャ名].rpm" が、CentOS5では "webalizer-2.01_10-30.1.[アーキテクチャ名].rpm" からインストールされます。

事実上これらのバージョンには違いはありませんので、以後の説明は基本的にCentOS5を基準に説明します。WBEL3、CentOS3、WBEL4、CentOS4をご利用の方は適宜読み替えて解釈してください。

このページの先頭へ↑

Webalizerの日本語化の手順

まず、 サブネット 内の適当な クライアント機 から SSHクライアント 構築中のLinuxサーバー ログイン します SSHクライアントでサーバーに接続する(WBEL3) SSHクライアントでサーバーに接続する(CentOS3) SSHクライアントでサーバーに接続する(WBEL4) SSHクライアントでサーバーに接続する(CentOS4) SSHクライアントでサーバーに接続する(CentOS5)

この お便利サーバー.com のアクセス解析結果を公開中ですのでご覧ください。
メインコンテンツのアクセス解析結果 お便利サーバー.com
お便利サーバー.comへの検索ロボットのアクセス状況 検索ロボット

それから su コマンド アカウント "root" に変更します。

[tanaka@web1 ~]$ su -Enter
Password: "root"のパスワードを入力します。 Enter
[root@web1 ~]#

準備ができたら早速作業を始めましょう。

1.既存のWebalizerのアンインストール

まず、現在 構築中のLinuxサーバー にインストールされている Webalizer rpm コマンド を使って調べます。

なお、WBEL3及びCentOS3では"webalizer-2.01_10-15.ent"、WBEL4及びCentOS4では"webalizer-2.01_10-25.ent"、CentOS5では"webalizer-2.01_10-30.1"と表示されるはずですので、そのパッケージ名に沿って同様に作業してください。

[root@web1 ~]# rpm -qa | grep webalizerEnter grepコマンドについて
webalizer-2.01_10-30.1  ←インストール済みのRPM名です。
[root@web1 ~]#

正確な RPM 名が解ったら、同じくrpmコマンドで アンインストール します。

[root@web1 ~]# rpm -qa | grep webalizerEnter
webalizer-2.01_10-30.1
[root@web1 ~]# rpm -e webalizer-2.01_10-30.1Enter
警告: /etc/httpd/conf.d/webalizer.conf saved as /etc/httpd/conf.d/webalizer.conf
.rpmsave

[root@web1 ~]#

もしもこのアンインストール作業を行う前に、一度でも "/etc/httpd/conf.d/webalizer.conf" に何らかの修正を行ったことがある場合は /etc/httpd/conf.d/webalizer.confの修正 、上の 赤字 のようなメッセージが表示されます。

つまりアンインストール前の設定ファイル "/etc/httpd/conf.d/webalizer.conf" は、同じディレクトリに "webalizer.conf.rpmsave" というファイル名でバックアップ保存されたことを表しています。

ここで説明した二つの設定ファイルは全く同名ですが、その目的や内容は全く異なりますので混同しないようにしてください。

また、Webalizerの処理内容を設定するメインの設定ファイル "/etc/webalizer.conf" も、アンインストール前に修正が行われていれば同様の処理が行われたことを表すメッセージ、

[root@web1 ~]# rpm -qa | grep webalizerEnter
webalizer-2.01_10-30.1
[root@web1 ~]# rpm -e webalizer-2.01_10-30.1Enter
警告: /etc/webalizer.conf saved as /etc/webalizer.conf.rpmsave
警告: /etc/httpd/conf.d/webalizer.conf saved as /etc/httpd/conf.d/webalizer.conf
.rpmsave
[root@web1 ~]#

が表示されます。

これらのバックアップファイルはあとから設定を元に戻すために使用しますので削除しないようにしてください。

以上で既存の英語版Webalizerのアンインストールが終わりました。

2.Webalizerのソースのダウンロード

RPM には、そのまま インストール を行うと利用可能になるタイプのパッケージと、一度 ソース の状態に展開してからRPMを作り直すタイプのパッケージがあります。

前者はファイル名が、

[プログラム名][バージョン][ アーキテクチャ 名].rpm

ですが、ソース型パッケージの場合は、

[プログラム名][バージョン][アーキテクチャ名].src.rpm

となっていますので容易に区別できます。

今回必要となるのは、前のステップで アンインストール した Webalizer と同じバージョンのRPMソースパッケージですから、

"webalizer-2.01_10-15.ent.src.rpm"(WBEL3,CentOS3の場合)

"webalizer-2.01_10-25.ent.src.rpm"(WBEL4,CentOS4の場合)

"webalizer-2.01_10-30.1.src.rpm"(CentOS5の場合)

となります。

入手方法は色々ありますが、 WBEL CentOS のインストール CD ISOイメージ を作成したときと同様に WBEL3のインストールCDの準備 CentOS3のインストールCDの準備 WBEL4のインストールCDの準備 CentOS4のインストールCDの準備 CentOS5のインストールCDの準備 、 「独立行政法人・理化学研究所」の HTTP サイト http://ftp.riken.go.jp/ から ダウンロード するのが簡単です。

各々のOSでのアップロード場所は以下のとおりです。

WBEL3とWBEL4ではソースパッケージは "i386" フォルダの中にありますが、 "x86_64" 環境でご利用の場合でもそのまま使えます。

WBEL3:

http://ftp.riken.go.jp/Linux/whitebox/3.0/en/os/i386/SRPMS/

CentOS3:

http://ftp.riken.go.jp/Linux/centos/3.9/os/SRPMS/

WBEL4:

http://ftp.riken.go.jp/Linux/whitebox/4/en/os/i386/SRPMS/

CentOS4:

http://ftp.riken.go.jp/Linux/centos/4.8/os/SRPMS/

CentOS5:

http://ftp.riken.go.jp/Linux/centos/5.7/os/SRPMS/

ここから一度 クライアント機 "webalizer-****.src.rpm" をダウンロードし、 FTPクライアント から 構築中のLinuxサーバー アップロード してもOKですが、以下のように wget コマンド を使って直接 構築中のLinuxサーバー にダウンロードしても良いでしょう。

[root@web1 ~]# wget http://ftp.riken.go.jp/Linux/centos/5.6/os/SRPMS/
webalizer-2.01_10-30.1.src.rpm
Enter
--2010-06-19 13:13:52-- http://ftp.riken.go.jp/Linux/centos/5.6/os/SRPMS/webalizer-2.01_10-30.1.src.rpm
ftp.riken.go.jp をDNSに問いあわせています... 134.160.38.1
ftp.riken.go.jp|134.160.38.1|:80 に接続しています... 接続しました。

        中略

100%[======================================>] 289,100   858K/s 時間 0.3s

2010-06-19 13:13:53 (858 KB/s) - `webalizer-2.01_10-30.1.src.rpm' へ保存完了 [289100/289100]

[root@web1 ~]#

ソースパッケージを取得したら、次にパッケージの展開を行います。

3.パッケージの展開と日本語化の設定

RPM のソースパッケージを展開するには、RPMの インストール と同じオプションで rpm コマンド を実行します。

WBEL4の場合は、 "/usr/src/redhat" ではなく、 "/usr/src/whitebox" に展開されます。
以後の説明では、WBEL4で該当するディレクトリ名は、適宜 "redhat"→"whitebox" と読み替えて作業してください。
また、CentOS5の場合は、rpmのソースパッケージの展開は本来、ユーザー"mockbuild"グループ"mockbuild"で実行されるのが前提ですので、 代わりにrootを使用します というメッセージが表示されることがあります。

オプションは同じでも、コマンドの実行の対象がソースパッケージの場合は "/usr/src/redhat" 以下の適切なディレクトリに整理して展開されるだけで、 アプリケーション のインストールは行われません。

[root@web1 ~]# rpm -ivh webalizer-2.01_10-30.1.src.rpmEnter
        中略

########################################### [100%]
[root@web1 ~]#

パッケージの展開が終わったら、RPMパッケージの作成の際の初期設定ファイル "webalizer.spec" が展開されているディレクトリ "/usr/src/redhat/SPECS" に移動し、 nanoエディタ "webalizer.spec" を開きます nanoエディタでファイルを開く

[root@web1 ~]# cd /usr/src/redhat/SPECSEnter cdコマンドについて
[root@web1 SPECS]# nano webalizer.specEnter
webalizer.specをエディタで開く
webalizer.specをエディタで開く

この設定ファイル "webalizer.spec" の中で、WBEL3及びCentOS3では 48行目 、WBEL4及びCentOS4では 54行目 、CentOS5では 74行目 に、

%configure --enable-dns --with-dblib=/lib

という記述がありますので、ここに表示の日本語化を行うためのオプションを以下のように追記します。

%configure --enable-dns --with-dblib=/lib --with-language=japanese

追記が終わったらファイルを保存してnanoエディタを閉じます nanoエディタでファイルを閉じる

4.RPMの作成に必要なプログラムのインストール

展開した RPM のソースパッケージからRPMを作成するには、 rpmbuild という コマンド を使います。書式は、

rpmbuild [オプション] [SPECファイル] Enter

です。

オプションに "--clean" を追加すると、展開されているソースファイルなどが削除されます。
オプションの名前の通り、RPMの材料を片付けてしまっても構わないときに指定します。

オプションに "-bb" を指定すると、 "/usr/src/redhat/RPMS" 以下の該当する アーキテクチャ 名のディレクトリの下にRPMが作成され、 "-ba" を指定するとRPMの作成と同時に "/usr/src/redhat/SRPMS" 以下に ソース 形式のRPMが作成されます。

ものは試しに、次のようにコマンドを実行してみてください。大抵はエラーが出るはずです。

[root@web1 SPECS]# rpmbuild -bb webalizer.specEnter
エラー: ビルド依存性の失敗:
    gd-devel は webalizer-2.01_10-30.1.i386 に必要とされています
    libpng-devel は webalizer-2.01_10-30.1.i386 に必要とされています
[root@web1 SPECS]#

エラーの意味は簡単です。つまり、

「webalizer-2.01_10-30.1を作成するには、 "gd-devel" "libpng-devel" が必要。」

ということですから、これらを 構築中のLinuxサーバー インストール してあげれば良いということがお解りと思います。

こういう場合は、メールサーバーの構築の中の dracのインストールについて でも説明していますが、まずこの二つのプログラムが WBEL CentOS の標準のパッケージ群にあるかどうかを yum コマンドで調べてみます。

[root@web1 SPECS]# yum install gd-devel libpng-develEnter
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies

        中略

Is this ok [y/N]:

すると該当するRPMが見つかり、場合によってはこれらのパッケージのインストールに必要な他のパッケージと合わせてインストールするかどうかを問い合わせてきますので、 y Enter でインストールを続行します。

[root@web1 SPECS]# yum install gd-devel libpng-develEnter
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies

        中略

Is this ok [y/N]:yEnter
Downloading Packages

        中略

Complete!
[root@web1 SPECS]#

以上で Webalizer のRPMを作成するためのプログラム、 "gd-devel" "libpng-devel" のインストールが終わりました。

5.日本語版WebalizerのRPMを作成する。

前のステップの冒頭と同じ方法でもう一度 rpmbuild コマンドを実行してみます。

お使いの ホスト機 の性能によっては、数分程度かかるかもしれません。
慌てずにゆっくり待ちましょう。

すると大量のメッセージが表示されながら RPM の作成が行われます。

[root@web1 SPECS]# rpmbuild -bb webalizer.specEnter
実行中(%prep): /bin/sh -e /var/tmp/rpm-tmp.87237
+ umask 022
+ cd /usr/src/redhat/BUILD

    中略

書き込み完了: /usr/src/redhat/RPMS/i386/webalizer-2.01_10-30.1.i386.rpm
書き込み完了: /usr/src/redhat/RPMS/i386/webalizer-debuginfo-2.01_10-30.1.i386.rpm
実行中(%clean): /bin/sh -e /var/tmp/rpm-tmp.36144

    中略

+ exit 0
[root@web1 SPECS]#

以上で日本語表記の Webalizer のRPMの作成が終わりました。

"i386" の部分はお使いのホスト機の環境によって異なります

作成された "webalizer-****.i386.rpm" は、上の 赤字 で示したところに作成されています。

6.日本語版Webalizerをインストールする

作成した "webalizer-****.i386.rpm" は、 rpm コマンド を使ってインストールします。

[root@web1 SPECS]# rpm -ivh /usr/src/redhat/RPMS/i386/webalizer-2.01_10-30.1.i386.rpmEnter
準備中...          ########################################### [100%]
  1:webalizer       ########################################### [100%]
[root@web1 SPECS]#

以上で日本語版 Webalizer のインストールが完了しました。

7."/etc/httpd/conf.d/webalizer.conf"の書き戻し

Webalizer の再 インストール を行うと、設定ファイル "/etc/httpd/conf.d/webalizer.conf" 及び "/etc/webalizer.conf" の内容は デフォルト に戻ってしまいます。

そこで1.のステップで行った アンインストール 作業でバックアップファイル "webalizer.conf.rpmsave" が作成されている場合は、この内容を設定ファイルに書き戻す必要があります。

ファイルの指定を 絶対パス で行わず、 cd コマンドで カレント ディレクトリをそれぞれのディレクトリに変更してから行っているのは、この二つの設定ファイルの名前が同じだからです。
これらは設定の目的も意味も異なりますから、うっかり相手側の設定内容を書き込んでしまうわけにはいかないということです。

"/etc/httpd/conf.d/webalizer.conf" が作成されている場合は、以下のように cat コマンド と 出力のリダイレクト 出力のリダイレクト処理について を組み合わせて以下のように実行します。

[root@web1 SPECS]# cd /etc/httpd/conf.dEnter
[root@web1 conf.d]# cat webalizer.conf.rpmsave > webalizer.confEnter
[root@web1 conf.d]#

"/etc/webalizer.conf" が作成されている場合も同様に作業します。

[root@web1 conf.d]# cd /etcEnter
[root@web1 etc]# cat webalizer.conf.rpmsave > webalizer.confEnter
[root@web1 etc]#

以上でWebalizerの設定内容の復元が完了しました。

このページの先頭へ↑

日本語化Webalizerの動作確認

Webalizer デーモン ではありませんから、 インストール しただけではアクセス解析結果は日本語化されません。必ず一度Webalizerを実行する必要があります。

ヒマな方はWebalizerが デフォルト 自動的に実行される午前4時過ぎまで待ってもかまいませんが、Webalizerはいつ何度実行しても結果がおかしくなることはありませんから、

[root@web1 etc]# webalizerEnter
[root@web1 etc]#

のようにすぐ実行しても大丈夫です。

次に HTTP 構築中のLinuxサーバー にアクセス可能な クライアント機 Webブラウザ から、

http://www.obenri.com/usage/

にアクセスしてみてください。

日本語版Webalizerの表示例
日本語版Webalizerの表示例

このように表示が日本語に変わっていることが確認できるはずです。

このページの先頭へ↑

"/etc/yum.conf"の設定変更

Webalizer はあまり頻繁に アップデート される アプリケーション ではないようですが、もしも新しいバージョンがリリースされ、 WBEL CentOS の標準アップデートパッケージが準備されてしまうと、 yum でシステム全体をアップデートするときに yumによるシステムのアップデート(WBEL3) yumによるシステムのアップデート(CentOS3) yumによるシステムのアップデート(WBEL4) yumによるシステムのアップデート(CentOS4) yumによるシステムのアップデート(CentOS5) 、ほかのパッケージと一緒にアップデートされてしまいます。

この お便利サーバー.com のアクセス解析結果を公開中ですのでご覧ください。
メインコンテンツのアクセス解析結果 お便利サーバー.com
お便利サーバー.comへの検索ロボットのアクセス状況 検索ロボット

するとせっかく インストール した日本語版のWebalizerもアップデートされ、元の英語版にもどってしまうかもしれません。

そこで、Webalizerを自動アップデートの対象からはずしておく必要がありますから、 nanoエディタ "/etc/yum.conf" を開き nanoエディタでファイルを開く [main]セクション以下に "exclude=webalizer*" と記述してください。

右の例では割愛していますが、既に他のrpmについて同じようにあなた自身が記述しているかもしれません。
[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=whitebox-release

   中略

exclude=webalizer*

   後略

これで、yumによるWebalizerのアップデートは行われなくなりました。

このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。
Powered by Apache
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。
www.centos.org - The Community ENTerprise Operating System