-------------------------------------------------------------------------
**********************************************************************
MHonArc 2.2.0 での mail archive の全文検索エンジン・なまずのレシピ
**********************************************************************
前もって、kakasi 2.2.5 を ports 等を使ってシステムにインストールする。
ftp などで手に入れた namazu-1122.tar.gz を 任意のディレクトリで解凍する
$()/namazu-1122/src/Makefile
を自分の環境に合わせて変更する。
##CGIDIR
= $(BASEDIR)/etc/httpd/cgi-bin
CGIDIR =
$(BASEDIR)/www/cgi-bin
私は、apache を使用しているので、namazu.cgi
は、
/usr/local/www/cgi-bin
とした。
OPT_PATH_PERL
= /usr/local/bin/perl ←perl 5.003以上へのパス
OPT_ADMIN_EMAIL
= webmaster@www.n.smb.net
make install
-------------------------------------------------------------------
mknmz (サーチエンジンが利用するインデクスファル作成プログラム)
のための準備
-------------------------------------------------------------------
/usr/local/namazu/lib/namazu.conf-dist を、namazu.confにコピーする。
ついでに、/usr/local/namazu/index/にもこぴーして、.namazurc とする。
複数のデータベースファイルを各ml毎に切替えて使う場合は、
/ + usr/ + local/ + namazu/ + index/ + foo/ + bar/ +namazuml/ (例題)
というディレクトリ構造を作り、私は各ディレクトリにmknmzの改造版と
.namazurc を各々置いておき、専用データベースとしている。
-------------------------------------------------------------------
mknmz 本体に以下の改造を加える。
-------------------------------------------------------------------
##
## このプログラムの動作に関係する定数
##
$SYSTEM = "UNIX"; # 動作環境 UNIX/WIN32/OS2
$ADMIN = 'webmaster@www.n.smb.net'; # 管理者のメールアドレス
$CGI_ACTION = '/cgi-bin/namazu.cgi'; # <FORM> の ACTION の指定 ~~~~~~~~~~~~~~~~~~~~~ ↑ これは、共通で良いようである。
#$CGI_ACTION = '/cgi-bin/%NMZCGI%'; # <FORM> の ACTION の指定
## 検索プログラムが用いるヘッダファイル ($HEADERFILE) のサンプル
$HEADER_MSG = <<EOFheader;
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-2022-JP">
<LINK REV=MADE HREF="mailto:$ADMIN">
<TITLE>Namazu the full text retrieval search system</TITLE>
</HEAD>
<BODY LANG="ja"><BODY BGCOLOR="#ffffff"> 元々のページから検索ページ
<H1>Namazu による全文検索システム</H1> に移った時に色を揃えるため : に白を指定した : : :
<STRONG>要約表示:</STRONG>
<SELECT NAME="format">
<OPTION SELECTED VALUE="long">ON
<OPTION VALUE="short">OFF
</SELECT>
</P>
<STRONG>検索対象:</STRONG> 追加
<SELECT NAME="dbname"> 追加
<OPTION SELECTED VALUE="namazuml">namazuml 追加
</SELECT> 追加
<INPUT TYPE="HIDDEN" NAME="whence" VALUE="0">
</FORM><HR>
EOFheader
-------------------------------------------------------------------
としたうえで、.namazurc には、
-------------------------------------------------------------------
INDEX
/usr/local/namazu/index/namazuml
#REPLACE /home/mlist/public_html/namazu/
http://www.n.smb.net/~mlist/namazu/
等としている。二行目の REPLACE がコメントなのは、何故か、反映されない
からである。
そこで、実際にインデクスファイルを作る時には、
目的のディレクトリに、この場合は、/usr/local/namazu/index/namazumlと
すると、
/usr/local/namazu/index/namazuml:
total 6873
drwxr-xr-x 2 root wheel
1024 May 19 14:28 .
drwxr-xr-x 3 root wheel
512 May 19 09:54 ..
-rw-r--r-- 1 root wheel
220 May 19 10:05 .namazurc
-rw-r--r-- 1 root wheel
388 May 19 13:59 HOW2ADD-INDEX
-------------------------------------------------------------------
HOW2ADD-INDEX
-------------------------------------------------------------------
*************************************************************************
新しいインデックスを追加する時のコマンド。
*************************************************************************
cd /usr/local/namazu/index/namazuml
./mknmz-namazuml "http://www.n.smb.net/~mlist/namazu/"
"/home/mlist/public_html/namazu/" /home/mlist/public_html/namazu
-------------------------------------------------------------------
の様に、メモを書き留めている。(毎回入力するのは面倒だし、typo もするし)
これで、データベースと、サーチエンジンの準備が出来た。
-------------------------------------------------------------------
MHonArc 側 の 設定変更
-------------------------------------------------------------------
MHonArc が使用する、メーリングリストが、
/usr/home/mlist/public_html/namazu 以下であるとすると、
/usr/home/mlist/public_html/namazu/.header.html を以下のようにする。
-------------------------------------------------------------------
<!-- header.html -->
<HTML>
<BODY>
<BODY BGCOLOR="#ffffff">
<IMG SRC="http://www.n.smb.net/smb-bunner.jpeg"
ALIGN=LEFT>
<H1>Main Index of Namazu Mailing list </H1>
<HR>
<FORM METHOD="GET" ACTION="http://www.n.smb.net/cgi-bin/namazu.cgi">
<P><STRONG>検索式:</STRONG>
<INPUT TYPE="TEXT" NAME="key" SIZE="40">
<INPUT TYPE="SUBMIT" NAME="submit" VALUE="Search!"> </P>
<P>
<STRONG>検索対象:</STRONG>
<SELECT NAME="dbname">
<OPTION SELECTED VALUE="namazuml">namazuml
</SELECT>
<STRONG>表示件数:</STRONG>
<SELECT NAME="max">
<OPTION VALUE="10">10
<OPTION SELECTED VALUE="20">20
<OPTION VALUE="30">30
<OPTION VALUE="50">50
<OPTION VALUE="100">100
</SELECT>
<STRONG>要約表示:</STRONG>
<SELECT NAME="format">
<OPTION SELECTED VALUE="long">ON
<OPTION VALUE="short">OFF
</SELECT>
</P>
<INPUT TYPE="HIDDEN" NAME="whence" VALUE="0"> </FORM>
<hr>
<BR CLEAR=LEFT>
Archives are sepalated by month.
-------------------------------------------------------------------
また、同様に index.html にも追加し、変更がすぐに反映されるようにする。
-------------------------------------------------------------------
補足事項
なお、
/ + usr/ + local/ + namazu/ + index/ + foo/ + bar/ + namazuml/ (例題)
のうち、/usr/local/namazu/index に、
-rw-r--r-- 1 root wheel
1535 May 18 12:06 NMZ.body
-rw-r--r-- 1 root wheel
1076 May 18 12:06 NMZ.body-e
が無いと、MHonArc のメイン・インデクスから何も入力されない時に
「検索の方法」が表示されない。
( これは、最近のバージョンで修正されたようである)
-------------------------------------------------------------------
以上です。