- 追加された行はこの色です。
- 削除された行はこの色です。
#freeze
#contents
http://www.crimson-snow.net/hmsvr/bsd/memo/estraier.html
全文検索システム「Estraier」の導入
全文検索システムとしては「Namazu」が有名であるが、その他にもいくつかあり、ここでは「Namazu」にも劣らない「Estraier」を導入する。
また、分かち書きには「ChaSen」を利用する。
ここでは
/usr/local/www/data/
/usr/local/www/apache22/data/
以下のすべてを検索対象ディレクトリとし、転置インデックスを
/usr/local/www/estraier/
/usr/local/www/apache22/data/estraier/
に作成するものとする。
なお、「Apache」の設定は完了済みとする。#contents
http://www.crimson-snow.net/hmsvr/bsd/memo/estraier.html
全文検索システム「Estraier」の導入
全文検索システムとしては「Namazu」が有名であるが、その他にもいくつかあり、ここでは「Namazu」にも劣らない「Estraier」を導入する。
また、分かち書きには「ChaSen」を利用する。
ここでは
/usr/local/www/apache22/data/
以下のすべてを検索対象ディレクトリとし、転置インデックスを
/usr/local/www/apache22/data/estraier/
に作成するものとする。
なお、「Apache」の設定は完了済みとする。
*「Estraier」のインストール [#me8c2114]
「ChaSen」のインストール
**「ChaSen」のインストール [#l4945ca6]
まず分かち書きに利用する「ChaSen」をインストールする。
FreeBSD# cd /usr/ports/japanese/chasen <= 作業ディレクトリへ移動
FreeBSD# make install clean <= 「ChaSen」のインストール
piano:root {97} % portinstall japanese/chasen
**「Estraier」のインストール [#v23bc220]
piano:root {86} % portinstall textproc/estraier
以下をチェックする
[X] CHASEN Japanese Morphological Analysis Support
**「Estraier」の実行 [#bfd9a952]
転置インデックス格納先ディレクトリの作成
FreeBSD# mkdir /usr/local/www/estraier
FreeBSD# mkdir /usr/local/www/apache22/data/estraier
**「Estraier」の新規実行 [#o532a67d]
「Estraier」を新規に実行する場合は以下のようにする。
FreeBSD# estindex register /usr/local/www/estraier/est_index /usr/local/www/data <= 転置インデックスの作成
FreeBSD# estindex register /usr/local/www/apache22/data/estraier/est_index /usr/local/www/apache22/data <= 転置インデックスの作成
piano:root {87} % estindex register /usr/local/www/estraier/est_index /usr/local/www/data
estindex: INFO: /usr/local/www/estraier/est_index: registration started
estindex: INFO: /usr/local/www/estraier/est_index: the connection was established: fsiz=1188447 dnum=0 wnum=0 bnum=229243
estindex: INFO: /usr/local/www/estraier/est_index: database opened: fsiz=1188447 dnum=0 wnum=0 bnum=229243
estindex: INFO: /usr/local/www/data/MT/plugins/FacebookCommenters/doc/README.txt: registered: id=1 wnum=1229
chasen: can't open chasenrc or /usr/local/etc/chasenrc
piano:root {88} %
piano:root {87} % estindex register /usr/local/www/apache22/data/estraier/est_index /usr/local/www/apache22/data
FreeBSD# estindex relate /usr/local/www/apache22/data/estraier/est_index <= 転置インデックスに関連文書検索用のスコア情報を追加
FreeBSD# estindex relate /usr/local/www/estraier/est_index <= 転置インデックスに関連文書検索用のスコア情報を追加
**「Estraier」の実行 [#b4fb732b]
ページに更新があった後、「Estraier」を実行する場合は以下のようにする。
FreeBSD# estindex purge /usr/local/www/apache22/data/estraier/est_index <= サイトから削除された文書を転置インデックスからも削除
FreeBSD# estindex register /usr/local/www/apache22/data/estraier/est_index /usr/local/www/data <= 転置インデックスの作成
FreeBSD# estindex optimize /usr/local/www/apache22/data/estraier/est_index <= 転置インデックスの更新で生じた不要な情報を削除
FreeBSD# estindex relate /usr/local/www/apache22/data/estraier/est_index <= 転置インデックスに関連文書検索用のスコア情報を追加
**「Estraier」の設置 [#xcf49917]
設定ファイル等格納先ディレクトリの作成
FreeBSD# mkdir /usr/local/www/apache22/cgi-bin/estraier
**各種ファイルのコピー [#h833a0fa]
FreeBSD# cp /usr/local/libexec/estsearch.cgi /usr/local/www/apache22/cgi-bin/estraier/
FreeBSD# cp /usr/local/share/estraier/locale/ja/estsearch.conf /usr/local/www/apache22/cgi-bin/estraier/
FreeBSD# cp /usr/local/share/estraier/locale/ja/estsearch.tmpl /usr/local/www/apache22/cgi-bin/estraier/
FreeBSD# cp /usr/local/share/estraier/locale/ja/estsearch.top /usr/local/www/apache22/cgi-bin/estraier/
**「Estraier」の設定 [#xaf6cf81]
FreeBSD# vi /usr/local/www/apache22/cgi-bin/estraier/estsearch.conf <= 設定ファイルの編集
indexname: casket
↓
indexname: /usr/local/www/apache22/data/estraier/est_index <= 転置インデックスを指定
prefix: ./
↓
#prefix: ./ <= コメントアウト
replace:
↓
replace: /usr/local/www/apache22/data/ http://piano.smb.net/
replace: /usr/local/www/apache22/data/ http://www.est_index.net/ <= 検索対象ディレクトリの置換
ブラウザで
http://piano.smb.net/cgi-bin/estraier/estsearch.cgi
とアクセスする。
**サイト内に設置する場合 [#le23b68d]
サイト内に検索用のFORMを設置する場合、設置したい場所に以下の内容を記述。
<FORM method="get" action="/cgi-bin/estraier/estsearch.cgi">
<DIV>
<INPUT type="text" name="phrase" value="" size="64" tabindex="1" />
<INPUT type="submit" value="Search" tabindex="2" />
<INPUT type="hidden" name="enc" value="EUC-JP" />
</DIV>
</FORM>
転置インデックスの自動作成&不要データ削除
FreeBSD# vi /root/estraier.sh <= 転置インデックスの自動作成&不要データ削除スクリプト作成
#!/bin/sh
ESTINDEX='/usr/local/bin/estindex'
$ESTINDEX purge /usr/local/www/apache22/data/estraier/est_index > /dev/null 2>&1
$ESTINDEX register /usr/local/www/apache22/data/estraier/est_index /usr/local/www/data /dev/null 2>&1
$ESTINDEX optimize /usr/local/www/apache22/data/estraier/est_index > /dev/null 2>&1
$ESTINDEX relate /usr/local/www/apache22/data/estraier/est_index > /dev/null 2>&1
**スクリプトの自動実行 [#l7c6a82f]
FreeBSD# vi /etc/crontab <= cronの編集
00 03 * * * root /root/estraier.sh <= 追加(毎日3:00にスクリプト実行)
----
*「Estraier」のインストール [#me8c2114]
**「ChaSen」のインストール [#l4945ca6]
まず分かち書きに利用する「ChaSen」をインストールする。
piano:root {97} % portinstall japanese/chasen
**「Estraier」のインストール [#v23bc220]
piano:root {86} % portinstall textproc/estraier
以下をチェックする
[X] CHASEN Japanese Morphological Analysis Support
**「Estraier」の実行 [#bfd9a952]
転置インデックス格納先ディレクトリの作成
FreeBSD# mkdir /usr/local/www/apache22/data/estraier
**「Estraier」の新規実行 [#o532a67d]
「Estraier」を新規に実行する場合は以下のようにする。
FreeBSD# estindex register /usr/local/www/apache22/data/estraier/est_index /usr/local/www/data <= 転置インデックスの作成
piano:root {87} % estindex register /usr/local/www/apache22/data/estraier/est_index /usr/local/www/data
FreeBSD# estindex relate /usr/local/www/apache22/data/estraier/est_index <= 転置インデックスに関連文書検索用のスコア情報を追加
**「Estraier」の実行 [#b4fb732b]
ページに更新があった後、「Estraier」を実行する場合は以下のようにする。
FreeBSD# estindex purge /usr/local/www/estraier/est_index <= サイトから削除された文書を転置インデックスからも削除
FreeBSD# estindex register /usr/local/www/estraier/est_index /usr/local/www/data <= 転置インデックスの作成
FreeBSD# estindex optimize /usr/local/www/estraier/est_index <= 転置インデックスの更新で生じた不要な情報を削除
FreeBSD# estindex relate /usr/local/www/estraier/est_index <= 転置インデックスに関連文書検索用のスコア情報を追加
FreeBSD# estindex purge /usr/local/www/apache22/data/estraier/est_index <= サイトから削除された文書を転置インデックスからも削除
FreeBSD# estindex register /usr/local/www/apache22/data/estraier/est_index /usr/local/www/data <= 転置インデックスの作成
FreeBSD# estindex optimize /usr/local/www/apache22/data/estraier/est_index <= 転置インデックスの更新で生じた不要な情報を削除
FreeBSD# estindex relate /usr/local/www/apache22/data/estraier/est_index <= 転置インデックスに関連文書検索用のスコア情報を追加
**「Estraier」の設置 [#xcf49917]
設定ファイル等格納先ディレクトリの作成
FreeBSD# mkdir /usr/local/www/cgi-bin/estraier
FreeBSD# mkdir /usr/local/www/apache22/cgi-bin/estraier
**各種ファイルのコピー [#h833a0fa]
FreeBSD# cp /usr/local/libexec/estsearch.cgi /usr/local/www/cgi-bin/estraier/
FreeBSD# cp /usr/local/share/estraier/locale/ja/estsearch.conf /usr/local/www/cgi-bin/estraier/
FreeBSD# cp /usr/local/share/estraier/locale/ja/estsearch.tmpl /usr/local/www/cgi-bin/estraier/
FreeBSD# cp /usr/local/share/estraier/locale/ja/estsearch.top /usr/local/www/cgi-bin/estraier/
FreeBSD# cp /usr/local/libexec/estsearch.cgi /usr/local/www/apache22/cgi-bin/estraier/
FreeBSD# cp /usr/local/share/estraier/locale/ja/estsearch.conf /usr/local/www/apache22/cgi-bin/estraier/
FreeBSD# cp /usr/local/share/estraier/locale/ja/estsearch.tmpl /usr/local/www/apache22/cgi-bin/estraier/
FreeBSD# cp /usr/local/share/estraier/locale/ja/estsearch.top /usr/local/www/apache22/cgi-bin/estraier/
**「Estraier」の設定 [#xaf6cf81]
FreeBSD# vi /usr/local/www/cgi-bin/estraier/estsearch.conf <= 設定ファイルの編集
FreeBSD# vi /usr/local/www/apache22/cgi-bin/estraier/estsearch.conf <= 設定ファイルの編集
indexname: casket
↓
indexname: /usr/local/www/estraier/est_index <= 転置インデックスを指定
indexname: /usr/local/www/apache22/data/estraier/est_index <= 転置インデックスを指定
prefix: ./
↓
#prefix: ./ <= コメントアウト
replace:
↓
replace: /usr/local/www/data/ http://www.est_index.net/ <= 検索対象ディレクトリの置換
replace: /usr/local/www/apache22/data/ http://piano.smb.net/
replace: /usr/local/www/apache22/data/ http://www.est_index.net/ <= 検索対象ディレクトリの置換
ブラウザで
http://www.est_index.net/cgi-bin/estraier/estsearch.cgi
http://piano.smb.net/cgi-bin/estraier/estsearch.cgi
とアクセスする。
**サイト内に設置する場合 [#le23b68d]
サイト内に検索用のFORMを設置する場合、設置したい場所に以下の内容を記述。
<FORM method="get" action="/cgi-bin/estraier/estsearch.cgi">
<DIV>
<INPUT type="text" name="phrase" value="" size="64" tabindex="1" />
<INPUT type="submit" value="Search" tabindex="2" />
<INPUT type="hidden" name="enc" value="EUC-JP" />
</DIV>
</FORM>
転置インデックスの自動作成&不要データ削除
FreeBSD# vi /root/estraier.sh <= 転置インデックスの自動作成&不要データ削除スクリプト作成
#!/bin/sh
ESTINDEX='/usr/local/bin/estindex'
$ESTINDEX purge /usr/local/www/estraier/est_index > /dev/null 2>&1
$ESTINDEX register /usr/local/www/estraier/est_index /usr/local/www/data /dev/null 2>&1
$ESTINDEX optimize /usr/local/www/estraier/est_index > /dev/null 2>&1
$ESTINDEX relate /usr/local/www/estraier/est_index > /dev/null 2>&1
$ESTINDEX purge /usr/local/www/apache22/data/estraier/est_index > /dev/null 2>&1
$ESTINDEX register /usr/local/www/apache22/data/estraier/est_index /usr/local/www/data /dev/null 2>&1
$ESTINDEX optimize /usr/local/www/apache22/data/estraier/est_index > /dev/null 2>&1
$ESTINDEX relate /usr/local/www/apache22/data/estraier/est_index > /dev/null 2>&1
**スクリプトの自動実行 [#l7c6a82f]
FreeBSD# vi /etc/crontab <= cronの編集
00 03 * * * root /root/estraier.sh <= 追加(毎日3:00にスクリプト実行)
----