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

BugTrack-plugin/283

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

WikiFarmに対応したmsearch検索

  • 投稿者: たけぞう
  • カテゴリ: 修正
  • 優先度: 緊急
  • 状態: 提案
  • 日時: 2006年04月25日 19時27分57秒

 内容

ちょっとやっつけ気味ですが、BugTrack-plugin/84をもとにWikiFarmに対応したmsearch検索プラグインを作ってみました。msearch 1.52にあてるパッチを同梱しています。また、BugTrack-plugin/84と比べて設定の必要な部分がなるべく少なくなるよう工夫しています。

 ダウンロード

 インストール方法

解凍すると以下のようなファイル群が現れます。

/plugin
 |
 +-msearch152.diff (msearch 1.52にあてるためのパッチ)
 |
 +-/msearch
    |
    +-Config.pm (msearchと連携するための設定)
    |
    +-GenIndex.pm
    |
    +-Install.pm
    |
    +-MsearchForm.pm
    |
    +-MsearchHandler.pm

まずはmsearch152.diffをmsearch 1.52に含まれているmsearch.cgiにあてます。その後、msearch.cgiの102行目あたりにあるFSWikiの情報を編集します。

### FreeStyle Wiki ログイン情報関連
$fswiki_log_dir         = "../log";
$fswiki_config_dir      = "../config";
$fswiki_user_file       = "$fswiki_config_dir/user.dat";
$fswiki_showlevel_file  = "$fswiki_config_dir/showlevel.log";
$fswiki_sessfile_prefix = "cgisess_";
$fswiki_cookie_sid      = "CGISESSID"; 
$fswiki_cookie_usr      = "wiki_id";
$fswiki_login           = -1; # -1:ログインしていない 0:管理者ログイン 1:一般ユーザログイン

パッチをあてたmsearchを適当な場所にインストールし、CGIとして動作するよう設定しておきます。

次にmsearchディレクトリをFSWikiのpluginディレクトリにコピーし、Config.pmの設定を変更します。

# msearchのインデックス作成CGIのURL
$CGI_GENINDEX = 'http://localhost/fswiki/msearch/genindex.cgi';

# msearchの検索CGIのURL
$CGI_MSEARCH  = 'http://localhost/fswiki/msearch/msearch.cgi';

# msearchのパスワード
$MSEARCH_PASS = 'msearchpass';

# FSWikiをインストールしたディレクトリ
$FSWIKI_DIR   = '../';

以上で設定完了です。一度ページを保存しなおすとインデックスが再生成され、画面上部の「インデックス検索」メニューからmsearchによる検索を行うことができます。また、BugTrack-plugin/84と同様、ページ内にmsearch検索フォームを表示するプラグインも使用可能です。詳細はBugTrack-plugin/84をご覧ください。

 コメント

  • お疲れ様です。自分の環境で試してみたところ
  1. 検索結果が2ページ以上に渡る場合、次ページに行けない。(URLがhttp://xx.xx.xx/msearch/msearch.cgi?&set=2になってしまう)
  2. 検索結果が表示された画面で再検索出来ない
  3. ページを削除されても検索に反映されない
  4. Farmでも親Wikiのデータが検索されてしまう。

でした。こちらの環境の問題のせいかもしれないですが、ご参考までに。- Goo (2006年04月26日 16時05分47秒)

  • 3以外は確認できないんですが、付属のパッチあててますよね? - たけぞう (2006年04月26日 18時34分35秒)
  • 手動でパッチ当てたので漏れがあるかもしれないです。もう少し調べてみます。 - Goo (2006年04月26日 19時21分14秒)
  • 今パッチを当て直したところ正常に動作しました。もう一つ質問ですが親Wikiでインデックスを作成すると子Wikiのデータも対象になってしまわないですか?(非対象ディレクトリに何も記述して無いので) - Goo (2006年04月26日 20時35分26秒)
  • なっちゃいますね。いちおう検索結果からはちゃんと子Wikiのページに飛べるんですが、対象からは外したほうがいいですかねぇ。 - たけぞう (2006年04月27日 18時00分10秒)
  • 子wikiを別サイトのような使い方をしている場合は子wikiは対象にならなくてもいいと思うのですが、子wikiをサブカテゴリのように使っているときには、全体をまたいだ検索がしたいことがよくあります。 - 名無しさん (2006年04月27日 19時06分18秒)
  • VineLinux3.2,FSWiki3.5.11の環境で動きました.すぐに動いて感動しました.インストール時に変更した点は「1.スクリプト先頭行(複数)のPerlのパス」,「2.msearchディレクトリの書き込み許可」です. - katsu03 (2006年04月28日 02時21分27秒)
  • 子Wikiを検索対象にするかしないかどちらかを選べと言われれば、子Wikiは検索対象にしないほうがいいでしょうねぇ。子Wikiで親Wikiと全く関係無いサイトを運営していた場合検索の邪魔ですし見せたく無い場合もあるかもしれないですしねぇ。 - Goo (2006年04月28日 06時33分23秒)
  • 子Wikiは対象から外すようにしました。あと、元のmsearchプラグインがグローバル変数使いまくりだったので修正しました。でもmsearch自体がグローバル変数使いまくりなのでFSWikiをmod_perl、msearchをCGIとして動かすよう設定しないとダメなんですけどね…。 - たけぞう (2006年04月30日 12時59分29秒)
  • 子Wikiも検索対象としている検索エンジンを探しています。本プラグインを子Wiki対象とするにはどうしたらよいでしょうか。 - mts (2007年01月22日 23時29分09秒)
  • windowsな環境ではpatchコマンドが使えなかったので、ちょっと困ってました。http://www.sip.eee.yamaguchi-u.ac.jp/kou/diff-patch.html と http://qwerty777.s57.xrea.com/winunix/command.htm のあたりを参考にpatchを使えるようにしたので、同じ境遇の方のご参考まで。 - MRB (2007年01月28日 11時18分24秒)
  • .htaccessで DirectoryIndexに wiki.cgi を追加し、http://localhost/foo/bar/ を編集後、検索すると、検索結果に表示されるurlが http://localhost/foo/bar?page=TOP となり、barの後の/が抜けてしまいます。GenIndex.pm かな、と重いつつ、どこを修正すれば良いのか分かりません。分かる方、ご教授ください。 - 名無しさん (2007年03月06日 01時44分57秒)
  • 携帯から検索すると、文字化けが発生します。原因は http://www.kiteya.net/cgi-bin/msbbs/padd-bbs.cgi?p=2051 の通り。差分ファイルを上げておきます。 - MRB (2007年04月20日 02時56分17秒)
  • MsearchHandler.pm(870) - MRB (2007年04月20日 02時57分04秒)
  • plugin を使わせて頂いているのですが、GenIndex.pmの最後で実施しているget_response にてproxy 設定が無い環境だとうまくインデックスが作成されません。これは仕方がないのでしょうか。。(閉じたネットワーク環境だとうまくいかないということです) - 初心者 (2007年05月09日 18時13分14秒)
お名前: コメント:
MsearchHandler.pm msearch.zip

最終更新時間:2014年08月24日 00時20分31秒