トップ 差分 一覧 Farm ソース 検索 ヘルプ RSS ログイン

BBS-サポート掲示板/678

ページの作成や編集にはユーザ登録が必要です。

 msearchで、fswiki内検索とhtml検索を同時に行いたい - MRB (2007年01月29日 01時25分19秒)

現在、

/html2
 |
 +-/html
 |  |
 |  +-/html_doc 以下、通常のhtmlドキュメント
 |  
 +-/msearch  msearchインストールディレクトリ
 +-/wiki  fswikiインストールディレクトリ

のようなディレクトリ構成となってます。

BugTrack-plugin/283を参考に、ローカル環境でfswiki内をmsearchによりインデックス検索が可能なところまで確認できました。

このとき、「http://localhost/html2/msearch/msearch.cgi 画面からの検索で、fswiki 内検索に加え、html_doc 以下にある通常の html ドキュメントも検索」を実現したいのですが、下記の通りとなり悩んでいます。どなたか知恵をお貸しいただけないでしょうか。

<現状>

http://localhost/html2/msearch/genindex.cgi からインデックスを作成する際、fswiki の dataフォルダに加え、html_doc ディレクトリを指定し、インデックスを作成しました。

「wiki」という文字列を msearch.cgi から検索した結果、fswiki内(wikiディレクトリ)も検索結果として表示されました。

しかし、検索結果のリンクがhttp://localhost/html2/wiki/data?page=Help%2FFSWikiのようになってしまい、リンクをクリックしてもページが表示されません。

<一応実現>

全くスマートなやり方ではないですが、実現できました。2つインデックスを作成し、マージする方法です。

1つはBugTrack-plugin/283のプラグインを用い、fswiki内をインデックス化します。

もう1つは、msearch付属のgenindex.cgiから、wiki以外の部分のインデックスを作ります。このとき、インデックスの名前を何か適当に(hogehogeなど)設定しておきます。

そのfswiki以外のインデックスファイル(hogehoge.idx)をテキストエディタで開き、中をfswikiのインデックス(default.idx)に加え、保存します。

このままfswikiのmsearchプラグインを有効にすると、マージしたdefault.idxが上書きされるので、msearchプラグインのInstall.pmにある

$wiki->add_hook("save_after","plugin::msearch::GenIndex"); 

をコメントアウトしておきます。

とりあえず、これでfswiki内と普通のhtmlページの両方を検索できます。

もう少し上手い方法があればよいのですが…。

お名前: コメント:

最終更新時間:2007年01月30日 00時39分38秒