※パッケージを入れたことがなければ、この手順が必要です。パッケージを入れたことがあれば多分すでに入っているでしょう(無責任(笑)
- nkf を make
# mkdir nkf171
# mv nkf171.shar nkf171
# sh nkf171.shar
# make
# cp nkf /usr/bin/nkf
# cd NKF
# perl Makefile.PL
# make
# make install
- kakasi を make
# tar xvfz kakasi-2.3.1.tar.gz
# cd kakasi-2.3.1
# ./configure
# make
# make install
- KAKASI Perl モジュール化を make
# tar xvfz Text-Kakasi-1.01.tar.gz
# cd Text-Kakasi-1.01
# perl Makefile.PL
# make
# make install
※パッケージを入れた状態で Namazu をアップデートするならここから
- Namazu 本体を make
# tar xvfz namazu-2.0.12.tar.gz
# cd namazu-2.0.12/File-MMagic
# perl Makefile.PL
# make
# make install
# cd ..
# ./configure --prefix=/usr
# make
# make install
なお、この手順ではパッケージでいれた Namazu の実行ファイルを上書きします。
- インデックスファイルを作る
Namazu でも、他の検索エンジンと同様、あらかじめインデックスファイルが出来ている必要があります。以下は、単一のインデックスファイルを作成する際の手順です。
# cd /usr/var/namazu/index
# /usr/bin/mknmz --checkpoint /usr/local/apache/htdocs
この場合は、Apache のデフォルトのドキュメントルートである /usr/local/apache/htdocs/
以下の文書についてのインデックスを作成する事を指示していますが、ドキュメントルートが別の場所にあるなら、その場所を指定するべきです。僕んちの場合は、ドキュメントルートが
/home/que/htdocs なので、上記の場所はこのディレクトリに置き換えます。
mknmz が "Out of memory!" で止まってしまう場合は、この例のように --checkpoint をつけます。http://www.namazu.org/doc/tips.html#saving-memory
を読んで対策しました。僕んちのWEBサーバも非常にプアな環境なので、これをしないとインデックスが作成できないときがあったので(;_;)
インデックスが作成できたら、一旦検索してみましょう。
# /usr/bin/namazu linux
なにかそれらしい出力があれば、概ね動いていると思われます。
なお、インデックスの作成位置を変更している場合は、/usr/etc/namazu/namazurc へ、インデックスの位置を示してあげる必要があります。namazurc
ファイルは、/usr/etc/namazu/namazurc-sample をコピーして編集するといいようです。
- CGI として動かす
正しく make されていれば、/usr/libexec ディレクトリに namazu.cgi ができているはずです。これを、cgi-bin
ディレクトリ(Apache 1.3.x のデフォルトでは、/usr/local/apache/cgi-bin)にコピーします。
これをブラウザから叩くと、Namazu の Webインターフェース画面が現れます。
単一のインデックス作成方法で作成した場合は結果を見れば分かりますが、URL ではなくUNIXのファイルシステムのルート(/)からの絶対パスになってしまいます。これは、コンソール上で使うときは便利ですが、CGI
の場合は URL として使い物にならないので、.namazurc を cgi-bin ディレクトリに作成して URL
を設定します。.namazurc は、/usr/etc/namazu/ ディレクトリにある namazurc-sample をコピーして利用します。
# cd /usr/etc/namazu
# cp namazurc-sample /usr/local/apache/cgi-bin/.namazurc
# vi .namazurc
# grep Replace .namazurc
Replace /usr/local/apache/htdocs/ http://host.who.where.jp/
このように直した後、もう一度検索を行うと、正しく URL が表示される事が分かるでしょう。