この文書は Namazu バージョン1系列をもとにしています.
バージョン2系列についての記事は現在作成中です.
また,その後このサイトの検索CGIの設置場所を変更したため,
以下のリンクの中には無効になっているものがあります.
以下が従来の本文です.
@nifty:@homepage では cgi が使えるので,日本語全文検索システム
namazu を導入してみました.
自分のサイトを検索できるようにする,
Windows 環境での手順のメモを下に紹介します.
C:¥usr¥local¥perl
にインストールした.
C:¥usr¥local¥perl¥bin
にパスを通しておくこと.
筆者の場合のディレクトリの関係をまとめると下のようになる. 以下この例で説明する.
ローカルパス | D:¥home¥web¥je7ida¥ |
FTP パス | ftp://ftp4.nifty.com/homepage/ |
実際のパス | http://homepage1.nifty.com/je7ida/ |
ローカルパス | D:¥home¥web¥cgi-bin¥ |
FTP パス | ftp://ftp4.nifty.com/cgi-bin/ |
実際のパス | http://hpcgi1.nifty.com/je7ida/ |
まず namazu と kakasi をインストールする. 入手したファイルを実行すればインストールが行われる. デフォルトではそれぞれ
C:¥usr¥local¥namazu , |
C:¥usr¥local¥kakasi |
>にインストールされる.他のディレクトリへインストールしてもよいが,
UNIX に由来をもつプログラムは ¥usr
以下へインストールするのがデフォルトである場合が多いので,
このディレクトリにインストールしたほうが整理しやすいだろう.
さらに,実行ファイルが置かれるディレクトリへパスを張る.ここでは
C:¥usr¥local¥namazu¥bin , |
C:¥usr¥local¥kakasi¥bin |
>にパスを張ればよい.
しかしこれでは環境変数 PATH
が長くなりすぎるので,
この2ヶ所にある実行ファイルを C:¥usr¥local¥bin
にコピーし,
このディレクトリだけに PATH
を張ることにした(あまりおすすめしません).
たとえばC:¥AUTOEXEC.BAT
の
PATH で始まる行を次のように記述する.
PATH C:¥usr¥bin;C:¥usr¥local¥bin; C:¥cygnus¥cygwin-b20¥h-i586-cygwin32¥bin; C:¥WINDOWS;C:¥WINDOWS¥COMMAND; C:¥usr¥local¥perl¥bin;C:¥ |
DOS プロンプトを開き,D:¥home¥web¥cgi-bin
に移動する.
mknmz D:¥home¥web¥je7ida¥↓ |
>(ここで "↓" はリターンキーをあらわす)を実行すると,
D:¥home¥web¥cgi-bin
にインデックスファイルが生成される.
画面に処理しているファイルの名前が表示されていく.
はじめてインデックスを作るときは,かなり時間がかかる.
できあがったら,
適当な単語(ここでは「ジジ」)で検索が正常にできるか調べてみる:
namazu ジジ .↓ |
>検索結果が画面に表示されるはずだ. なお,ディレクトリ指定のための最後のピリオドを忘れないこと.
C:¥usr¥local¥namazu¥contrib¥pnamazu-98.12.16.tgz
から
pnamazu.cgi を解凍し,D:¥home¥web¥cgi-bin におく.
さらにこのファイルの名前を namazu.cgi に変更する.
ドキュメント pnamazu.html もながめておこう.
perl がインストールされているなら,
perl namazu.cgi↓ |
>と入力すると,ずらずらと字化けした出力が得られるはずだ.次に
perl namazu.cgi > _tmp.html↓ |
start _tmp.html↓ |
>のように入力すれば,検索語入力画面が開く.
1行目に Content-Type: text/html
とよけいなものが表示されているが,これで正しい.
以上,動作確認が終わったら _tmp.html
は削除しておく.
実際にローカルで検索を行わせてみるには, ローカルに http サーバを稼働させる必要がある. 筆者は Apache を導入したが,完全な設定ができたら報告するつもりである.
namazu.cgi
の1行めは,
サーバの perl の置き場所によっては変更が必要だが,
@nifty の場合はそのままで良い.
次に設定ファイル .namazurc
を作成する.
C:¥usr¥local¥namazu¥lib¥namazu.conf-dist
を
D:¥home¥web¥cgi-bin
にコピーし,
名前を .namazurc
に変更し,
環境に合わせてこのファイルを編集する.
ここでは REPLACE
だけ変更すればよい.
下のように設定した.
#INDEX C:¥usr¥local¥namazu¥index REPLACE /D|/home/web/je7ida/ http://homepage1.nifty.com/je7ida/ #BASE file://localhost/home/foo/documents/ #LOGGING OFF #LANG ja #SCORING TFIDF |
>つまり,検索結果がたとえば /D|/home/web/je7ida/index.html なら http://www3.justnet.ne.jp/‾k-nakano/index.html に変換して表示されるようにするのである. ここで,ドライブ名の "D" は大文字で記述すること.
LANG
がデフォルトの日本語 (ja)ならば,
cgi が吐きだす HTML は NMZ.head.ja
,
NMZ.body.ja
,NMZ.foot.ja
から作られるので,
これを自分の気に入るように変更する.
ここで <!-- FILE -->
の部分は,
namazu.cgi
が値等を書き込む場所の指定である.
namazu.cgi
の動作確認のときと同じようにして実際の見え方をチェックするとよいだろう.
FTP ソフトを使い,D:¥home¥web¥cgi-bin¥
ディレクトリのファイルをサーバの cgi-bin
ディレクトリの中へアップロードする.
.namazurc を ASCII,
その他のファイルを binary でアップロードした.
次に namazu.cgi に実行属性を与える. サーバに送るべき文字列は quote site chmod 755 namazu.cgi だが, たとえば FTP explorer ではメニューを「ツール」「サーバにコマンド」と開き, コマンド入力ボックスに site chmod 755 namazu.cgi と入力する.
以上で作業は終了である.web ブラウザに
>(Z) と入力すると検索語入力画面が出て検索ができるはずだ.
集めたファイルを自分のコンピュータのハードディスクの中に再構築し,
再構築ディレクトリについて namazu で処理するのが簡単だろう.
以下,この手順を手短に説明する.
詳細については各ソフトのドキュメントを参照してほしい.
まず検索に含めたいサイトのファイルを集める.
Internet Explorer 4 以降なら,購読機能を使うと楽だろう.
画像ファイル等は特に必要ないので,購読から外してよい.
次に,Internet Explror のキャッシュから再構築を行う.
筆者が使用したのは
"i.j IE5 Web Rebuilder ver.1.29"
である.再構築フォルダには,D:¥var¥ie5web
を指定した.
するとディレクトリ構造は次のようになる.たとえば
http://homepage1.nifty.com/index.html
は
D:¥var¥ie5web¥http$¥homepage1.nifty.com¥index.html
にコピーされる.
D: | ¥var | |||
¥ie5web | ||||
¥ftp$ | ||||
¥ftp.freebsd.org | ||||
...... | ||||
¥http$ | ||||
¥163.143.173.133 | ||||
¥homepage1.nifty.com | ||||
¥www.aisoft.co.jp | ||||
...... | ||||
¥ie | ||||
¥nn |
なお,筆者は Internet Explorer,Netscape Navigator のキャッシュを
それぞれ上記の ie ディレクトリ,nn ディレクトリに置いている.
以下,インデックスファイルを mknmz D:¥var¥http$¥
として作成し,.namazurc
は
REPLACE /D|/var/http$/ http:// |
>とすれば良いだろう.