11.9 【XでNamazu検索(後編)】 前回の続き。本当は先週書くつもりだったのだけど、テンプレートの部分が整理できなくて書けなかった。まだ整理(というより理解か)できていないのだけど、その部分は省略して普通に使うところまでを扱おうと思う。
まず、インデックスの作成から。Namazuの検索は、Sherlockなんかと同じように、先にインデックスと呼ばれるものを作成してから行う。これによって、高速に検索ができるというわけだ。
作成先は特に指定しなくてもいいみたいだけど、うちの場合、作成したインデックスをサーバにアップロードしてインターネットで検索できるようにと考えたので、アップロードするためのフォルダに作成するように指定した。また、インデックスを作成するファイルやフォルダについては、スペースで区切って複数同時に指定することができる。これもうちの場合だけど、コンテンツを置いているサーバが2つあるので、それらを同時に指定した。 インデックスが作成できたら、次は検索だ。検索に使用するコマンドはnamazuだ。書式はこんな感じ。
使用するインデックスには、mknmzで作成したインデックスのある場所を指定する。これで、検索結果がずらずらと表示される。
ローカルのパスからインターネット上のURLに変換するには、.namazurcというファイルを作成して設定する。このファイルは、/usr/local/etc/namazu/にある、namazurc-sampleをベースに作成するといい。設定すべき項目は、3つ。Index、Replace、それからLangだ。
あとは、/usr/local/libexec/にあるnamazu.cgiをcgiを使用するサーバに転送、.namazurcをnamazu.cgiと同じフォルダに転送し、インデックスについても同様に転送すれば準備完了である。namazu.cgiについては実行権限をつけておくことをお忘れなく。
では、どうしたらいいか。namazu.cgiの代わりに、perlで書かれた検索用のcgiがあれば解決する。ものは試しと、Googleで「namazu」「perl」を検索してみたところ、namazu 検索プログラム perl版(pnamazu)というページを発見。早速ダウンロードして試してみると、無事検索ができた。めでたい。 一点だけ補足。pnamazuのバイナリは、bzip2で圧縮されている。コマンドラインで展開するには、下のようにするとよい。
bzip2での圧縮結果をパイプでtarに渡すのだが、tarのオプション「-」がポイントで、これで標準入力を指定できるのだそうだ。ま、普通に2回にわけて展開しても同じことだが、中間ファイルを作らずにすむので便利だと思う。 今回の話はここで終わり。そうだ。もう一つ。シェルスクリプトをダブルクリックで実行する方法について、どこかで読んだような気がするのだけどどこだったか覚えてない。どうやるのかも覚えていなかったが、試しにFinderの「このアプリケーションで開く」でTerminalを指定すれば実行できるということを発見。問題は、ユーザディレクトリがカレントディレクトリになった状態で実行されるのでスクリプトによってはうまくうごかないことくらいかな。ま、これは、最初にcdで移動するようにしておけばいい。これは結構便利かも。 |
← October 26, 2002 ↑ 2002 index → December 8, 2002 |
あまつぶ >> あまつぶ >> November 9, 2002 |