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

BBS-雑談掲示板/49

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

 FSWikiでmsearchの利用 - kuwa (2003年11月27日 01時46分59秒)

VkDB.jpではデータ量が増えてきて、検索プラグインでの検索が辛くなってきました。そこで、インデックス検索CGI、msearchの導入を試みたところ、あっさり動作したのでご報告します。

mserachがhtml文書の検索向けの為、msearch.cgiに以下の処理を追加しました。

printresult関数内(1357行目)に挿入[1]

	if($orgurl =~ /([^\/]+)\.wiki$/){
		$f_notitle = &URIUnescape($1);
		$orgurl =~ s/([^\/]+)\.wiki$/wiki.cgi?page=$1/;
	}

どこでもいいので、以下の関数を追加

sub URIUnescape{
	my $str = shift;
	$str =~ tr/+/ /;
	$str =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2', $1)/eg;
	return $str;
}

上記以外は説明の通りに設置、インデックスを作成するだけです。あとはmsearch.cgiを呼び出すプラグインを作ればインデックス検索が可能になります。

インデックス作成

genindex.cgiでのインデックス作成時の設定は、
項目 説明
実行時の対象ディレクトリ dataディレクトリ
URL wiki.cgiを設置したディレクトリまでのURL
対象ファイルの拡張子 .wiki
です。他は画面上の説明を読んでください。

  • searchプラグインを参考に、msearchプラグインを作ってみました。 - Waver (2003年11月27日 11時33分58秒)
  • あるタイミングで、別のCGIを起動する。なんて、プラグイン作るのって無理ですかね? もし、できるならインデックスの自動作成にメドがたちそうなのだけれど。(画面表示一切なしで、インデックスを再作成し、終了後FSWikiを呼び出すCGIを書いたのです。) - Waver (2003年11月28日 09時22分45秒)
  • 紅猫さんが、save_afterのタイミングでインデックスを生成するモジュールを書いて下さいました。そのモジュールを組み込んだmsearchプラグインをアップしました。 - Waver (2003年11月28日 13時38分34秒)
  • msearchを修正してFSWikiの参照権限を見るようにしてみました。 - 紅猫 (2004年12月19日 16時35分36秒)
  • msearch150.diff(1342) がパッチです。1.51でも同じように修正できると思います。 - 紅猫 (2004年12月19日 16時36分51秒)
  • $fswiki_log_dir、$fswiki_config_dirを環境に合わせてください。 - 紅猫 (2004年12月19日 16時37分23秒)
  • このページを参考にmsearchを導入してみました。ver1.52になり若干挿入位置が変わったようですが、検索できてすごいと感じました。さらに、Farm内を検索させたいのですが、msearch.cgiの改造をどの様にしていいのか教えて頂きたいのですが。(改造を試みましたが私の理解を越えていました。) - norio (2006年02月18日 22時47分34秒)
  • msearchは複数のインデックスを切り替えて使えるみたいなので、Farmごとにインデックスを作ってやるようにする必要がありそうですね。 - たけぞう (2006年04月19日 19時39分03秒)
  • BugTrack-plugin/283にWikiFarmに対応したプラグインを作成してみました。 - たけぞう (2006年04月25日 19時33分57秒)
  • namazuの利用に関してのtipsも投稿されたようです>BBS-雑談掲示板/205 - kuwa (2007年08月06日 18時55分22秒)
お名前: コメント:
  • [1]wiki.cgiのファイル名を変更して使用している場合は、正規表現内のwiki.cgiの部分を修正してください。
msearch150.diff

最終更新時間:2007年08月06日 18時56分17秒