fml のメーリングリストを WWWで公開するまでの手順メモ(2002/04/06) 
 

前提条件ソフトウエアのバージョン

・WWWサーバ(apache 1.3.x)がインストールされていること。

・fml(4.03) のセットアップが済んでおり、メーリングリストが正しく運用できていること。

・fmlでの機能のHTML化指定がされていないこと。

MHonArc 2.5.7

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/mhonarc

2) MHonArcで HTML化したファイルの格納先を作成しませう。

fml% cd /var/spool/ml/elena
fml% mkdir archives

3) 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 elena

5) これでアクセスできるハズです

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 の処理中になんらかの原因でロックファイルが残ってしまった場合に出力されます。このエラーが表示された場合、ロックファイルディレクトリ(.mhonarc.lck)を削除します。

ERROR: Unable to lock /xxx 10 tries

下記のワーニングは、MHonArc のバージョンの違いから出力されます。このエラーが表示された場合、データベースファイル(.mhonarc.db)を削除し、再度データベースを作成する事をお奨めします。

Warning: Database (2.5.2) != program (2.5.7) version.

rcfileによるHTML化の制御方法

何も考えず MHonArc を実行し、そのまま使っていても全く問題ないのです。、多少の工夫をすれば見栄えも、管理も楽しくなるハズです(きっと)。で、私が、色々と物色しつつ思考錯誤をして作ってみました。これ→ rcfile

  MHonArcのrcfile

  MHonArc編 : (4) MHonArc カスタマイズのはじめに

  MHonArcについてのメモ

1) rcfile を HTML化するディレクトリに作成します。

fml% cd /var/spool/ml/elena
fml% vi rcfile

2) 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 に設定して・・・。と。

メールが投稿されたらすぐにHTML化

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/");

       #;