トップ   サーバー構築   旅行日記   リンク   About  

Namazu

日本語検索システムである。

インストール

namazu をインストールする前に File-MMagic をインストールする。
cd File-MMagic
perl Makefile.PL
make
su
make install

namazu のインストール

※kakasi と nkf がインストールされていることが前提で次のステップに進みます。
もしインストールされていないのであればインストールしてください。
tar xvfz namazu-2.0.14.tar.gz
cd namazu-2.0.14
./configure
make
make install

ブラウザでの検索設定

CGIテンプレートをコピーして環境をつくる。
cd /usr/local/
cp libexec/namazu.cgi apache2/cgi-bin/.
chmod 755 apache2/cgi-bin/namazu.cgi

環境の構築

インストールされるサンプルファイルをコピーして環境をつくる。
cd /usr/local/etc/namazu
cp namazurc-sample namazurc
cp mknmzrc-sample mknmzrc

Namazuの設定

namazu の設定ファイル namazurc の編集
Index         /usr/local/var/namazu/index
Template      /usr/local/var/namazu/index
Replace       /usr/local/apache2/htdocs/ \
                http://www.qurataro.com/
Logging       off
Lang          ja
Scoring       tfidf
EmphasisTags  ""   ""

インデックス作成のルールを設定

インデックス作成コマンド mknmz の設定ファイル mknmzrc を編集する

環境変数の設定

PERL_BADLANG=0

変換フィルタの追加

現在の機能だとテキストファイルのみのインデックス化しかできない
そこにこれらの変換フィルタソフトを追加することでさまざまな形式のファイルをテキストまたはHTMLに変換できるため、結果的にさまざまな形式のファイルでも検索することができるようになる。
Word
Excel (ExcelのデータをHTMLに変換する)
PDF
LV (アジア圏言語解析ツール)

Word解析ツール

tar xvfz wv-1.0.3.tar.gz
cd wv-1.0.3
./configure
make
make install

ExcelデータHTML変換ツール

tar xvfz xlhtml-0.5.tgz
cd xlhtml
./configure
cp ../wv-1.0.3/depcomp .
make
make install
※xlhtmlにはコンパイルに必要なdepcompファイルが含まれていないため、make中にエラーになってしまいます。その為、wvなどからdepcompファイルを環境にコピーする必要があります。

PDF解析ツール(英語)

tar xzf xpdf-3.00.tar.gz
cd xpdf-3.00
./configure
make
su
make install
cd ..

PFD解析ツール(日本語)

tar xzf xpdf-japanese.tar.gz
cd cd xpdf-japanese
su
mkdir -p /usr/local/share/xpdf/japanese
cp -R * /usr/local/share/xpdf/japanese
cat add-to-xpdfrc >> /usr/local/etc/xpdfrc

LV多言語解析ツール

tar xzfz lv451.tar.gz
cd lv451
cd build
../src/configure
make
su
make install

茶筅のインストール

奈良先端科学技術大学で開発された形態素解析システムである。 ダーツのインストール
tar xvfz darts-0.2.tar.gz
cd darts-0.2
./cofigure
make
make check
make install

茶筅のインストール

tar xvfz chasen-2.3.3.tar.gz
cd chasen-2.3.3
./configure
make
make install

日本語辞書のインストール

茶筌用の日本語辞書 IPADICをインストールする
tar xvfz ipadic-2.7.0.tar.gz
cd ipadic-2.7.0
./configure
make
make install

検索用インデックスファイルのコンフィグファイルの編集

動作確認

/usr/local/etc/namazu/mknmzrcファイルを編集
下記記述部分のコメントをはずします。
package conf; # Don't remove this line!
$ADDRESS = 'nitta@aroman.mine.nu';
$HTML_SUFFIX = "html?|[ps]html|html\\.[a-z]{2}";
$ALLOW_FILE = ".*\\.(?:$HTML_SUFFIX)|.*\\.....
"|.*\\.gz|.*\\.Z|.*\\.bz2" . # Compressed.....
"|.*\\.pdf|.*\\.ps" . # PDF, PostScript
"|.*\\.doc|.*\\.xls|.*\\.ppt" . # Word, E.....
"|.*\\.j[sabf]w|.*\\.jtd" . # Ichitaro 4,.....
"|\\d+|[-\\w]+\\.[1-9n]"; # Mail/News, man
Draw
"|.*\\.rtf" .                      # Rich Text Format
"|.*\\.hdml" .                     # HDML
"|.*\\.mp3" .                      # MP3
"|\\d+|[-\\w]+\\.[1-9n]";          # Mail/News, man
$DENY_FILE = ".*\\.(gif|png|jpg|jpeg)|.*\\.........
$EXCLUDE_PATH = undef;
$REMAIN_HEADER = "From|Date|Message-ID";
$SEARCH_FIELD = "message-id|subject|from|da........
$META_TAGS = "keywords|description";
%FIELD_ALIASES = ('title' => 'subject', 'au........
$NON_SEPARATION_ELEMENTS = 'A|TT|CODE|SAMP|........
'STRIKE|BIG|SMALL|DFN|ABBR|ACRONYM|Q|SUB|SU........
$ON_MEMORY_MAX = 5000000;
$FILE_SIZE_MAX = 2000000;
$TEXT_SIZE_MAX = 600000;
$WORD_LENG_MAX = 128;
%Weight =
(
'html' => {
'title' => 16,
'h1' => 8,
'h2' => 7,
'h3' => 6,
'h4' => 5,
'h5' => 4,
'h6' => 3,
'a' => 4,
'strong' => 2,
'em' => 2,
'kbd' => 2,
'samp' => 2,
'var' => 2,
'code' => 2,
'cite' => 2,
'abbr' => 2,
'acronym'=> 2,
'dfn' => 2,
},
'metakey' => 32, # for < meta name="keywords.........
'headers' => 8, # for Mail/News' headers
);
$INVALID_LENG = 128;
$MAX_FIELD_LENGTH = 200;
$NKF = "module_nkf";
$KAKASI = "module_kakasi -ieuc -oeuc -w";
$WAKATI = $KAKASI;

検索用インデックスファイルの作成

検索するためのインデックスファイルを作成します。
cd /usr/local/var/namazu/index
mknmz
上記コマンドですべてのファイルを対象にインデックスの作成が始まります。

cronに登録する

namazuのインデックスは取得した時のデータが対象になります。
つまり、インデックス作成後に登録された内容は検索の対象外になります。
そこで定期的にmknmzコマンドを実行させ、インデックスファイルを更新します。

テンプレートの編集

テンプレートを編集することで自分のサイトのイメージを保持したまま検索をさせることができる。
cd /usr/local/share/namazu/template/
Copyight (C) qurataro.com 2004-2007 quraportal All Rights. Reserved.