Solaris | Hyper Estraierのクローラestwaverを使う(全文検索システム)

社内のイントラネット用にクローラestwaverを利用する。

 

■クロール用のルートディレクトリを作成する

estwaverコマンドに引数initとディレクトリ名を指定して実行する。 

$ cd $HOME
$ mkdir crawl_dir
$ estwaver init crawl_dir

crawl_dir 内に設定ファイル等が作成される。

 

■_confファイルを設定する

$HOME/crawl_dir/_conf を編集する。

seed: 1.0|http://www.intra.com/
seeddepth: 5 
language: 1 
allowrx: ^http://[^/]*\.intra.com/
docnum: 100000

seed: 1.0  重み付け。1.0のままでよい。

seeddepth: 5  5階層の深さのディレクトリまでクロールする。

language: 1  0は英語。1は日本語。

allowrx:  GoogleやYahooのクローラのようにリンク先を全てクロールしてしまうので、イントラに限定したいときには、URLを指定する。

[^/]*\.  の意味は、/ から始まらず、適当な文字列***、ドット。

docnum: 100000  10万ドキュメントを上限。

 

■ドキュメントをクロール(収集)する

$ estwaver crawl -revcont $HOME/crawl_dir

crawl_dir/_index/ ディレクトリにインデックスが作成される。

 

■テストする

testという文字を検索してみる。 

$ estcmd search -vs $HOME/crawl_dir/_index "test"

 

■cgiからインデックスを使えるようにする

cgi-bin/estseek.conf を編集する。

indexname:  /export/home/intra/crawl_dir/_index

 

 

■cronで実行する 

cronで定期実行させるようにして、作業完了。

クロールしている最中は、インデックスを利用できない。つまり検索できない状態なので、インデックスのコピーを利用するようにcgi-bin/estseek.conf を設定しておくとよい。

 

■Solarisの引っ越し

SPARCからx86 Solarisへへの引っ越しの際は、ルートディレクトリをもう一度作り直すこと。(estwaver initコマンドを発行する)