[Namazu-users-ja 1307] Re: インデックスが開けませんでした

Tadamasa Teranishi yw3t-trns @ asahi-net.or.jp
2014年 8月 6日 (水) 21:52:18 JST


寺西です。

(2014/08/06 15:52), K.N wrote:
> インデックスは間違いなく作成されているようで、コマンドラインからは検索で
> きるのですが、
> WEB(namazu.cgi)から検索出来なくて困っております。
> WEB上では検索ページは表示されるのですが、キーワードを入力し実行しても、
> [ (インデックスが開けませんでした) ] の表示になります。

インデックスの指定が間違っているということです。

> ・/htdocs/namazu/.namazurc に以下を設定
>  Index     /htdocs/namazu/index
>  Template  /htdocs/namazu/index

Index と Template が同じ場所を指しているというのは、間違っている
においがプンプンします。

検索時のテンプレート機能は、カスタマイズしたテンプレートファイルを
インデックスとは別の場所に配置し、該当ファイルをインデックス
の代わりに使用する機能です。
このため、テンプレート機能を使う場合にはインデックスとは
別の場所を指しているはずです。
またテンプレート機能を使わない場合には、設定する必要はありません。

> ・/htdocs/namazu/index/NMZ.head.ja に以下を設定
>  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=euc-jp">
>  <input type="hidden" name="idxname" value="index">
>  <a href="{cgi}?idxname=index">[検索方法]</a>

通常はインデックスファイルを直接書き換えたりはしません。

mknmz 時に参照するテンプレートファイルを書き換えて使うか、
namazu, namazu.cgi 検索時に先のテンプレート機能を使うかのどちらか
です。

検索時のテンプレート機能を使うなら、/htdocs/namazu/template
ディレクトリを作成して、そこにインデックスの NMZ.head*, NMZ.foot*,
NMZ.body*, NMZ.tips* をコピーして、テンプレートの方を書き換えます。

.namazurc の Template には /htdocs/namazu/template を指定します。

で、テンプレートの NMZ.head.ja の書き換えるところですが、

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=euc-jp">

を追加するだけでいいです。

<input type="hidden" name="idxname" value="index">
  <a href="{cgi}?idxname=index">[検索方法]</a>

この2行はデフォルトから書き換えてしまっていますが、その書き換えが
大きな間違いです。インデックスディレクトリの下の index ディレクトリ
を指しているので、インデックスが見つかるはずがありません。
デフォルトのものに戻しましょう。

idxname を使うのは複数のインデックスがある場合で、どのインデックス
を使うのかを指定するもので、インデックスが1つしかない場合には
使いません。
-- 
=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns @ asahi-net.or.jp
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E


Namazu-users-ja メーリングリストの案内