インデックスの作成
namazuを使うには,事前に検索語をインデックスに登録しておかなければ
なりません。これを行うスクリプトを以下のように作ります.
#!/bin/sh
export PERL_BADLANG=0
export LANG=ja
mknmz -O index \
--replace='s#/usr/local/apache/htdocs/#http://www.fc-lab.com/#' \
/usr/local/apache/htdocs
|
"--replace"の部分にはホームページの内容が格納されているディレクトリと、
URLが書き換えられるように指定してください。
このコマンドでは/usr/local/apache/htdocs 以下のすべてのページの
内容からインデックスを作り、indexというディレクトリの保存します.
このスクリプト(以下ではこの名前をmake_indexとしておいたものとしています)
を適当な場所に置いて
# mkdir index
# ./make_index
|
と実行すると、インデックスが作られます.すべてを作り直したい場合は
index以下の内容をすべて消去して、もう一度上のコマンドを実行してください。
うまくできたかを確認するには、上のコマンドを実行した
ディレクトリで
と実行して正しく検索結果が得られればOKです。
検索ページの作成
namazuをインストールするとnamazu.cgiが/usr/local/libexec/
に置かれます.これをホームページのエリアのどこかから
シンボリックリンクを張るかコピーします。
そして、そのシンボリックリンクが存在するフォルダに
".namazurc"というファイルを作り以下のような内容を収めます.
このIndexのところには,インデックスの作成の処理で作った
インデックスが入っているフォルダへのパスを指定します.
そして http://www.fc-lab.com/cgi-bin/namazu.cgi のように
namazu.cgiをブラウザから呼びだせば全文検索のページが表示されます。
(cgi-bin/にnamazu.cgiへのリンクを張った場合)
正しく動作しない場合は httpd.conf で namazu.cgi が正しく
cgiとして実行されるように設定されていない可能性がありますので、
確認してください。
特定のページにこのCGIを呼び出すフォームを挿入するには、
次のような内容をページに入れてください.
<form action="/namazu/namazu.cgi" method=get>
<input name=query size=20>
<input type=submit value=検索>
</form>
|
検索ページのカスタマイズ
インデックスが入っているディレクトリの以下のファイルを書き換えると
表示をカスタマイズすることができます。
NMZ.head.ja | 検索結果の冒頭部分 |
NMZ.foot.ja |
検索結果の末尾部分 |
NMZ.body.ja |
検索式の説明。キーワードが与えられなかったときに表示される内容 |
NMZ.tips |
検索のコツ。検索に何もヒットしなかったときに表示される内容 |