hns(ハイパー日記システム)のインストール
日記なんて小学生以来書いた覚えはないのですが、PC上で何をしたか等 備忘録のため
Vaioにインストールしてみました.
まず、公式サイトに行って情報を収集しましょう.
インストールの仕方を見るとVine 2.1では問題なさそうなのでdocの通り
インストールしてみました.
インストール自体は、特に難しくありません.
Vaioには、自分の備忘録としてインストールしましたが、www.club535.comには
Linuxの情報やwebの更新情報などを管理できるのでclub535のサーバーにもインストールしました.
club535.comサーバーにhnsをインストール
はじめに、club535.comは自前のサーバーではありません.
ですから、telnet経由で各種設定を行います.
club535はFreeBSDです.現在私が利用しているOSはLinuxなので少々勝手が違います.特にbashが
デフォルトでインストールされていない.bashのinstall kakasiのinstall namazuのインストール hnsのインストール という順番でインストールを行いました.
bash,kakasi,namazuはドキュメントが豊富にあるので割愛させていただきます.
sourceの取得
hns-2.10-pl0.tar.gz namazu_for_hns-2.0-pl3.tar.gz 2つのsourceを落とします.
$ mkdir src
$ cd src
$ tar zxvf ../hns-2.10-pl0.tar.gz
$ hns-2.10-pl0
$ hns-setup.ja
各項目を入力します.
インストールが終われば、~/.hnssetupが出来ます.———- .hnssetup ———-
DEFTITLE=”hoge日記” ; ホームページのタイトル
DEFMAIL=”hohe@hoge.fuga.com” ; メールアドレス
DEFDIARY=”/home/hoge/diary” ; 日記の置き場所
DEFHTML=”/home/hoge/public_html/diary” ;公開する日記の場所
DEFUNAGI=”ON” ; namazuを使うか否か
DEFTOMAIL=”hohe@hoge.fuga.com” ; 更新した日記を送るメールアドレス
DEFFROMMAIL=”hohe@hoge.fuga.com” ; メールで日記を更新する時のメールアドレス
DEFPASSWD=”hoge” ; パスワード
DEFURL=”http://xxx.xxx.xxx.xxx/~hoge/diary/” ; 日記のURL
DEFTHEME=”japanese” ;themes
DEFANTENNA=”NG” ; アンテナに登録してもいいか
DEFAUTHOR=””
DEFMESMAIL=””
DEFNEWREVERSE=”0″
DEFSTARTYEAR=”2001″ ; 日記を書き始める年
——————————-インストールが完了すれば、http://xxx.xxx.xxx.xxx/~hoge/diary/で日記が表示されます
hnsのカスタマイズ
簡単な方法として、~/diary/conf/内にある
- head.txt
- foot.txt
を編集します.
head.txt
index.cgiにアクセスしたときに付加するheaderになります.
例えば、style sheetを追加したり、画像(ロゴ)を表示させたいときに記述します.
私の場合、このようなhead.txtになっています.————————————————————
<LINK REL=”stylesheet” TYPE=”text/css”HREF=”/diary.css”>
<CENTER>
<IMG SRC=”/cgi-bin/linuxbook/gif/messageb.gif”>
</CENTER>
<body background=”/cgi-bin/linuxbook/gif/kabe.gif”
————————————————————foot.txtについても同じようにhtmlソースを記述すればよい
Namazu v2 for hns による日記の全文検索
1. Namazu を取得してインストール
http://www.namazu.org/ より最新版を入手して下さい。
% wget -nd http://www.namazu.org/stable/namazu-2.0.5.tar.gz
% wget -nd http://www.h14m.org/dist/namazu_for_hns-2.0-pl3.tar.gz
% tar zxvf namazu_for_hns-2.0-pl3.tar.gz
% tar zxvf namazu-2.0.5.tar.gz
% cd namazu-2.0.5
% ./configure –prefix=/usr/local
% make
% su
% make install
% cd ../namazu_for_hns-2.0-pl3
2. (通常は不要) hnf用フィルタをインストール
(Namazu に添付の hnf.pl が古い場合のみ必要)
% ./setup-filter.sh /usr/local
– prefix –
3. 起動スクリプト, 設定ファイルをインストール
% ./setup.sh /usr/local
– prefix –注) Namazu 2.0.x を rpm でインストールされている場合は、
% ./setup-rpm.shhns-1.x をご利用の場合は、
% ./setup.sh /usr/local 1
– prefix –
ホーム・ディレクトリにインストールする場合
1. Namazu を取得してインストール
http://www.namazu.org/ より最新版を入手して下さい。
% wget -nd http://www.namazu.org/stable/namazu-2.0.5.tar.gz
% wget -nd http://www.h14m.org/dist/namazu_for_hns-2.0-pl3.tar.gz
% tar zxvf namazu_for_hns-2.0-pl3.tar.gz
% tar zxvf namazu-2.0.5.tar.gz
% cd namazu-2.0.5
% ./configure –prefix=$HOME/diary/namazu2 –with-pmdir=$HOME/lib
–with-pmdir で Perl Module のインストール先を指定。
% make
% make install
% cd ../namazu_for_hns-2.0-pl3
2. (通常は不要) hnf用フィルタをインストール
(Namazu に添付の hnf.pl が古い場合のみ必要)
% ./setup-filter.sh $HOME/diary/namazu2
—— prefix —–
3. 起動スクリプト, 設定ファイルをインストール
% ./setup-u.sh $HOME/diary/namazu2
—— prefix —–
注) hns-1.x をご利用の場合は、
% ./setup-u.sh $HOME/diary/namazu2 1
—— prefix —–
インデックスの作成
$ cd ~/diary/bin
$ ./hns-index2
でインデックスが作成・追加されます.なお,インデックス作成後に 以前の日記ファイルを更新した場合は,インデックス・ファイルの中に ゴミがたまりますので,そのゴミを 削除したい場合は,$ ./hns-index2 -gc
としてください.
インデックスがおかしくなってしまったというような場合には,$ ./hns-index2 clean
で完全に作り直すことができます.
注意:
Namazu v2 ではインデックスのフォーマットが変更されました。 以前のバージョンと互換性はありません。
また、rpm等でインストールしている場合は、
$ ./setup-rpm.sh
一発でインストールできます.
日記をメールで更新
メールを日記で更新するにはhnsをおいているシステムにsendmail等がインストールされていなければ使えません.
telnetなどで接続してから、sendmailの場所を確認しておきましょう.
設定
ドキュメントに必ず目を通しましょう
私が書かなくても、詳しくドキュメントに記載されていますので、説明は省き設定内容を載せておきます.
そうそう、はじめにforwardの設定を行ってくださいね.
これが出来ないとメールで日記の更新は難しいでしょう.
.forward
fuga, “|/home/hoge/diary/bin/mail2nikki.pl “
mail2nikki.pl
#!/usr/bin/perl
require ‘/hoge/fuga/www/diary/lib/jcode.pl’;
# $diaryDir 日記のあるディレクトリ
$diaryDir = “/hoge/fuga/diary”;
# 報告を受け取るアドレス.
$mailAddress = ‘xxx@xxx.xxx.xxx’;
# 投稿を許すアドレス(From認証) -複数のアドレスが登録可能です-
@certiy_mailAddress = (‘xxx@xxx.xxx.xxx’);
# 報告メールの From: アドレス
$recvMailAddress = ‘xxx@xxx.xxx.xxx’;
# パスワードです。
$MASTERPASSWD = “hoge”;
# 日記ファイルディレクトリの対応
$hnfDir = 1; # 1 分散管理(ex ~/diary/1998/19981201.hnf), 0 一括管理
# LOGMODE 全文ログを取得する時 0 エラー時のみ, 1 常に, 2 絶対しない
$LOGMODE = 0;
# status reporting mail
$MAILMODE = 0; # 1 無条件で動作報告メール
# use nkf?
$NKF_USE = 1; # 1 -> Use (default), 0 -> No Use
# auto signature cut
$SIG_CUT = 0; # 1 Signatureを削除する
$SIG_PATTERN = ‘^– $’; # Signatureの開始行の正規表現
# Update Namazu index?
$NamazuExecFlag = 1; # 0 -> no (default), 1 -> yes
# where is hns-index?
$MkNamazuPath = “$ENV{‘HOME’}/diary/bin/hns-index”;
# sendmail の場所 各サーバによって違うでしょう
$sendmail = “/usr/sbin/sendmail”;
# nkf の場所 確かめてね
$nkf = “/usr/bin/nkf”;私は大体このような設定になっております.
もし、うまく更新できていなければ はじめにメールがサーバーに届いているか確認しましょう.
メールが届いているなら、.forwardの設定がうまくできているか確認しましょう.
~/diary/mail内にlogが出来ています.