HyperEstraierでGemのRDocを検索できるようにしてみた

まずはMacPortsでHyperEstraierのインストール。

$ sudo port install hyperestraier

~/local/varにクローラルートディレクトリを作成しました。クロール範囲を先日設定したsinatra-rubygemsのアドレスに設定。

$ estwaver init est_gemdoc
$ nano est_gemdoc/_conf
# seed documents
seed: 1.0|http://gems.local
allowrx: ^http://gems.local

クロールさせてみる。

$ estwaver crawl -revcont est_gemdoc

検索用CGIスクリプトを設置して設定を変更。

$ mkdir Sites/estraier
$ cp /opt/local/libexec/estseek.cgi ~/Sites/estraier
$ cp /opt/local/share/doc/hyperestraier/locale/ja/estseek.* ~/Sites/estraier
$ nano ~/Sites/estraier/estseek.conf
indexname: /Users/username/local/var/est_gemdoc/_index

Apache2の設定を変更。

$ sudo nano /etc/apache2/httpd.conf
    AddHandler cgi-script .cgi
$ sudo nano /etc/apache2/extra/httpd-vhosts.conf
<VirtualHost *:80>
    ServerName estgd.local
    DocumentRoot "/Users/username/Sites/estraier"
    <directory "/Users/username/Sites/estraier">
      Order allow,deny
      Allow from all
      Options ExecCGI
    </directory>
</VirtualHost>
$ sudo apachectl graceful

で、estgd.localにアクセスすると、検索ページが表示された。

で、作業途中でRDocディレクトリをクロールさせてreplaceでURLに書き換えれば、クローラは必要ないんじゃないかと思った。それから~/Sites/estraierって名前だと抽象的すぎるよね…。

それからそれから、検索CGIをsinatraで作ってみたくなった。時間無いけど。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です