Movabletypeにはデフォルトで検索機能がついている。
イマイチ動作が遅いような気がしていた。
そこで、以前にAjaxを使用したエントリタイトルのインクリメントサーチを導入した。
(旧検索ページ)
で、今回は(笑)
全テキストの検索エンジンであるHyper Estraier(ハイパーエストレイア)を導入してみた。
(新検索ページ)
検索対象のデータに対してインデックスを事前に作成しているので、すこぶる検索時間が速い。
以下に導入手順を示す。
[導入条件]
・さくらのレンタルサーバ、プレミアムプラン
→よってユーザ権限下におけるインストールとなる。
[導入手順]
・公式サイトから、HyperEstraierおよび必要なモジュールのソースをダウンロード(zlib、livconv、qdbm)。※tar.gz形式
・ソースを、/home/(ユーザ名)/srcにアップロード
・.cshrcを編集し環境変数を追加。
set path = ($HOME/bin /sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin )
setenv LD_LIBRARY_PATH $HOME/lib:/usr/lib:/usr/local/lib
setenv LIBRARY_PATH $HOME/lib:$LIBRARY_PATH
serenv CPATH=$HOME/include:$CPATH
export PATH LIBRARY_PATH CPATH LD_LIBRARY_PATH
・telnetでログイン。
・以下のコマンドを実行。
mkdir -p bin lib include etc share libexec
・zlibのmake&install
$ cd $HOME/src/
$ tar zxvf (zlibソースパッケージ名)
$ cd (zlibソースフォルダ)
$ ./configure --prefix=$HOME
$ make
$ make install
・livconvのmake&install
$ cd $HOME/src/
$ tar zxvf (livconvソースパッケージ名)
$ cd (livconvソースフォルダ)
$ ./configure --prefix=$HOME
$ make
$ make install
・qdbmのmake&install
$ cd $HOME/src/
$ tar zxvf (qdbmソースパッケージ名)
$ cd (qdbmソースフォルダ)
$ ./configure --prefix=$HOME --enable-zlib
$ make
$ make install
・HyperEstraierのmake&install
$ cd $HOME/src/
$ tar zxvf (qdbmソースパッケージ名)
$ cd (qdbmソースフォルダ)
$ ./configure --prefix=$HOME --enable-static
$ make
$ make install
・全モジュールのinstallが完了したら、検索用cgiをコピー
・estseek.confを編集。(indexnameにインデックスファイル名、replaceに変換対象の絶対パス→URLを記述)
・インデックス作成。
$ cd $HOME/www
$ estcmd gather -il ja -sd (インデックスファイル名) $HOME/www/
・(URL)/estseek.cgiをブラウザから実行し動作を確認。
[参考リンク]
・公式サイト
→基本的な説明や、ソースのダウンロードはコチラ。
・まちゅダイアリー -さくらインターネット その4 (Estraierの導入)
→さくらにおけるユーザ権限下のインストールの説明。ただし対象モジュールはEstraierであるので注意。
・32nd Hiki - HyperEstraier
→ユーザ権限下のインストールの説明。ただし対象バージョンが若干古い模様。
・UNIXの環境変数メモ
→コンパイル時の環境変数についてのお勉強
・活動報告(2005-12-16)
→設定ファイルの書き方例。
・にわか鯖管の苦悩日記_|─|●(2005/12/12)
→インストール後のcgi実行における、500エラー解決方法はこちらで教授してもらった。大感謝。
(以上、敬称略)