[トップ] [更新履歴] [著書] [コンピュータ] [ゲーム] [CGI配布]


Title: シンプルなサーチエンジンrbsearch

サーチエンジンもどきをでっちあげてみた。 サーチエンジンというかむしろ検索可能リンク集といったところだろうか。 現在のところこんな仕様になっている。 作りは大部幼稚ではあるが、個人レベルの検索エンジンとしてはなんとか使えるだろう。

動作サンプルはここにある。 また、実際に『でありん』というサイトで運用されている。

1 設置方法

ここで例として http://www.rubikitch.com/rbsearch/ *1以下に rbsearch を設置する場合について説明する。 ただし、サーバ側にRubyがインストールされている必要がある!! どのサーバにRubyがインストールされているかはRubyanywhereで確認すること。*2 それか、シェルアカウントがもらえるのならば自前でRubyをインストールしよう。 Rubyってナニ?って人もインストールして損はないです。 これは俺が保証する!!

  1. <URL:/~rubikitch/archive/rbsearch-0.0.2.tar.gz>から取ってくる。そして展開。
  2. サーバのRubyのパスに応じて一行目の rbsearch.cgi のパスを書き換える。
  3. dat/以下に検索エンジンに登録するサイトのデータを書く。

  4. rbsearch-config.cgi を環境に応じて書き換える。

  5. 以下の配置になるようにサーバに転送する。

  6. http://www.rubikitch.com/rbsearch/rbsearch.cgi をアクセス! これでおしまい。

2 舞台裏

2.1 設定ファイルはすべてRubyスクリプト

というのは、自前で設定ファイル解析ルーチンを書くのが面倒であること。 あと、Rubyを知ってる人ならばいくらでも柔軟な設定を書くことができる。 知らない人にとってもRubyのわかりやすい文法のおかげで特に違和感なく書き換えられるはず。

rbsearch-config.cgi の内容は、 RbSearch クラス内で評価される。 すなわち、RbSearch.module_evalということ。

サイトデータファイルは空行で区切られたRubyスクリプトの断片となっている。 @から始まる変数は御存知インスタンス変数だ。 これは RbSearch オブジェクトの文脈で評価される。

2.2 ERb

ERbを使っているおかげで、出力されるHTMLをHTMLとして柔軟に書き換えることができる。 そこには従来のPerl CGIのようにうざったいprint分の羅列はない。 <%= 〜 %> でくるまれる部分はそれぞれのデータに置き換えられる。 Rubyについての知識がない方は間違っても<%= 〜 %>の中だけは書き換えてはいけない。 動作しなくなるぞ。 消す分には構わないのであるが。

3 変更履歴

0.0.1

最初のバージョン。

0.0.2

erbをパッケージに加える。


戻る ホームページへ戻る

Valid XHTML 1.0!
rubikitch(rubikitch@ruby-lang.org)

投書箱:コメントや伝えたい情報などがあればお気軽にどうぞ
名前 メール [説明]
URL
本文


*1ドメイン取ろうかな……。
*2増えてくれ、まじで頼んます。