Namazu-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ファイル数、キーワード、インデックス作成日が更新されない。
Amuro Rayです。
ご返答ありがとうございます。
Chihiro Hamatani <chihiro4ml@xxxxxxxxxxx> wrote:
> mknmzを実行したとき、インデックスと同じディレクトリにある
> テンプレートが更新されます。
> よって、これと異なるテンプレートを.namazurcで指定した場合、
> mknmzはこのことを知らないので、このテンプレートは更新されません。
>
なるほど。
> より詳しく述べると、
> ・mknmz実行時にindexディレクトリにtemplateファイル(NMZ.headなど)
> が存在しない場合
> →デフォルトのtemplate(あるいは-Tオプションで指定したtemplate)が
> indexにコピーされた後、NMZ.headなどが更新されます。
> ・mknmz実行時にindexディレクトリにtemplateファイル(NMZ.headなど)
> が存在する場合
> →indexディレクトリのtemplateファイル(NMZ.headなど)が更新
> されます。
> いずれにしても、namazu.cgi実行時にindexディレクトリと異なる
> ディレクトリを.namazurcで指定した場合、テンプレートのキーワード数や
> インデックス作成日は更新されません。
>
> つまり、
> mknmz実行時のtemplateと.namazurcのtemplateでは効果が異なるわけです。
indexディレクトリのtemplateしか更新されないのですね。
> ・indexディレクトリに存在するtemplateファイルを修正する。
> ・修正したtemplateファイルを、mknmz実行時に-Tオプションで
> 指定したディレクトリにコピーしておく。
> (indexをすべて消去したときの対策)
更新したtemplateを指定ディレクトリにコピーする手法ですね。
自分で調べたところ、mknmzrcで、
$TEMPLATEDIR = "/var/namazu/index/template/"
としてmknmzにtemplateの場所を教える方法はどうでしょう
か?
mknmzのperlスクリプトを見ると、
my $TEMPLATEDIR = "/usr/share/namazu/template"; # directory where templates ar
e in.
と、反映されていますし、
$TEMPLATEDIR = "../template" if -f "../template/NMZ.head";
という風になっていますので、もしやと。。。
でも、やっぱりtemplateは更新されませんでした。
ちなみに-Tオプションは、
mknmz --template-dir=/var/namazu/index/template/ -O
/var/namazu/index/ /var/www/web/worddoc/
としてもだめでした。↑記述がもしかして違うのかも。
やっぱりコピーするのが簡単でしょうか?
"★。、::。.::・'゜☆。.::・'゜★。、::。.::・'゜
Name : Amuro Ray
E-Mail : gundam@xxxxxxxxxxxxxxxx
"★。、::。.::・'゜☆。.::・'゜★。、::。.::・'゜