Ubuntu 10.04 LTSにHyperEstraierをインストールしてみる

2010/10/30

Ubuntu 10.04 LTS にHyperEstraierをインストールしてみた。CentOSでもインストールしたことがあるが、Ubuntuのパッケージ管理がすばらしく、手軽にできてしまうところが良い。

作業はHyperEstraier イントロダクションを参考にした。いつものように忘れたときのためにメモしておく。

サイト構築の前提条件

  • HTMLドキュメントの格納場所を /var/www/html とする
  • CGIスクリプトの設置場所を /var/www/cgi-bin とする
  • HyperEstraierインデックスの設置場所を /var/www/casket とする
  • サイトのURLアドレスを http://192.168.11.101 とする

サイトのディレクトリを作成する

$ sudo mkdir /var/www
$ sudo mkdir /var/www/html
$ sudo mkdir /var/www/cgi-bin

HyperEstraierをインストールする

$ sudo apt-get install hyperestraier
$ sudo apt-get install wv xlhtml ppthtml

Apacheコンフィグファイルを編集する

コンフィグファイルは /etc/apache2/sites-available/hypersite という名前で作る。

$ sudo vi /etc/apache2/sites-available/hypersite
<VirtualHost *:80>

    ServerAdmin webmaster@localhost

    DocumentRoot /var/www/html
    <Directory />
    Options FollowSymLinks
    AllowOverride None
    </Directory>
    <Directory /var/www/html>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /var/www/cgi-bin/
    <Directory "/var/www/cgi-bin/">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log
    LogLevel warn
    CustomLog /var/log/apache2/access.log combined
</VirtualHost>

defaultを無効にして、hypersiteを有効にし、apacheを再起動する

$ sudo a2dissite default
$ sudo a2ensite hypersite
$ sudo /etc/init.d/apache2 reload

検索用cgi、ページを設置する

$ sudo cp /usr/lib/estraier/estseek.cgi /var/www/cgi-bin
$ sudo cp /usr/share/hyperestraier/locale/ja/estseek.* /var/www/cgi-bin
  • estseek.cgiはCGIスクリプト
  • estseek.confは設定ファイル
  • estseek.tmplは検索ページのテンプレートファイル
  • estseek.topは検索ページの初期画面のメッセージを記述したファイル
  • estseek.helpは検索機能の簡単な使い方を記述したファイル
  • 日本語化したものが /usr/local/share/hyperestraier/locale/ja/ の下にある

HyperEstraier設定ファイルを編集する

$ sudo vi /var/www/cgi-bin/estseek.conf
indexname: /var/www/casket
...
replace: ^file:///var/www/html/{{!}}http://192.168.11.101/
  • indexnameはインデックスのパスを指定する
  • replaceはローカル用のURIをWebサーバ用のURIに変換する。{{!}} の前がローカル、後がWebサーバ。

インデックスを作成する

実験用コンテンツとして、HyperEstraierドキュメントをコピーする。

$ sudo cp -r /usr/share/doc/hyperestraier /var/www/html/doc

そのインデックスを/var/www/casket として作成する。

$ sudo estcmd gather -il ja -sd /var/www/casket /var/www/html/doc
  • 「-il ja」オプションは、文字コードの判定時に日本語を優先する
  • 「-sd」オプションは、ファイルの作成日時と更新日時をインデックスに記録する

ブラウザで動作を確認する

http://192.168.11.101/cgi-bin/estseek.cgi

「検索」を入力してSearchボタンをクリック

UbuntuUbuntu HyperEstraier

Posted by skw