fml
のメーリングリストを WWWで公開するまでの手順メモ(2002/04/06)
・WWWサーバ(apache 1.3.x)がインストールされていること。
・fml(4.03) のセットアップが済んでおり、メーリングリストが正しく運用できていること。
・fmlでの機能のHTML化指定がされていないこと。
MHonArc は、mailとして受け取った内容(MIME形式)をHTML化し、しかも index化/thread化してくれるとても便利なツールです。数多くある有名なMLは、この MHonArc によってHTML化され、過去ログを WWW上から参照する為に使用しています。
しかしこの MHonArc は、とても多くの機能を有しているためとても、この私・・・(ページ)では、全てを紹介できません(笑)。このページでは、導入方法、HTML化、rcfileの設定方法を、紹介しますので、あとは各自勉強し、便利な使い方などなど私まで教えて頂けると幸いです。
本家 : MHonArc (http://www.mhonarc.org/)
1) MHonArc をインストールします。特に、別段難しいことはないですけど、もしかしたら Perl のバージョンは、安定版といわれている 5.0004 以上を使うのがよいかもしれません。漢字でハマる事があるらしいです。(注:以前のDBファイルとの互換は、無いので注意が必要です)
$ cd ./src
$ wget http://www.mhonarc.org/tar/MHonArc2.5.7.tar.gz
$ gzip -cd MHonArc2.5.7.tar.gz | tar xf -
$ cd MHonArc2.5.7
$ perl Makefile.PL
$ make
$ su
# make install
→ /usr/bin/mhonarc2) MHonArcで HTML化したファイルの格納先を作成しませう。
fml% cd /var/spool/ml/elena
fml% mkdir archives3) MLに投稿されている、過去記事を HTML化しませう。
fml% /usr/bin/mhonarc -umask 022 -tlevels 100 -add /var/spool/ml/elena/spool/ -outdir /var/spool/ml/elena/archives/
4) WWW公開するポリシーは別にして、とりあえずWWW公開できるようにしましょう。
# cd /home/groups/home/web
# ln -s /var/spool/ml/elena/archives elena5) これでアクセスできるハズです。
http://localhost/elena
6) 不特定多数の人に見せたくない場合は、basic認証なり、ディレクトリ内容を見せないようにしましょう。
# cd /home/groups/home/web/elena
# vi .htaccess
AddHandler cgi-script htaccess
Options -Indexes
AuthUserFile /home/groups/home/pwd/elena.pwd
AuthGroupFile /dev/null
AuthName "elena ML member-only!"
AuthType Basic
require valid-user
# htpasswd -c /home/groups/home/pwd/elena.pwd elena
New password:
Re-type new password:
Adding password for user elena
下記のエラーは、MHonArc の処理中になんらかの原因でロックファイルが残ってしまった場合に出力されます。このエラーが表示された場合、ロックファイルディレクトリ(.mhonarc.lck)を削除します。
ERROR: Unable to lock /xxx 10 tries
下記のワーニングは、MHonArc のバージョンの違いから出力されます。このエラーが表示された場合、データベースファイル(.mhonarc.db)を削除し、再度データベースを作成する事をお奨めします。
Warning: Database (2.5.2) != program (2.5.7) version.
何も考えず MHonArc を実行し、そのまま使っていても全く問題ないのです。が、多少の工夫をすれば見栄えも、管理も楽しくなるハズです(きっと)。で、私が、色々と物色しつつ思考錯誤をして作ってみました。これ→ rcfile
MHonArc編 : (4) MHonArc カスタマイズのはじめに
1) rcfile を HTML化するディレクトリに作成します。
fml% cd /var/spool/ml/elena
fml% vi rcfile2) MHonArcを実行します。ちょっとパラメタが変わっています。
fml% /usr/bin/mhonarc -rcfile /var/spool/ml/elena/rcfile -add /var/spool/ml/elena/spool -outdir /var/spool/ml/elena/archives
3.毎度、手で実行するのは、辛いので cron化するか、下記の様にメールが投稿されたらすぐにHTML化する方法を取りましょう。こんなシェルを作りました mhonarc_elena.sh これを cron に設定して・・・。と。
cronの方がいいかも・・・。というのは、WWW参照できたら次に行いたい事は、全文検索 Namazu を入れたくなるからです。うーん一応、やり方を載せておきますね。
1) HTML化したいメーリングリストのディレクトリまで、降りていって・・・。
fml% cd /var/spool/ml/elena
fml% vi config.ph
LOCAL_CONFIG ← この定義部分を探す
$FML_EXIT_HOOK = q#
if ($ID)
&SpawnProcess("/usr/bin/mhonarc -rcfile /var/spool/ml/elena/rcfile -add /var/spool/ml/elena/spool -outdir /var/spool/ml/elena/archives/");
#;