December 28, 2003
blosxom を試してみる。
■ blosxom 入手
blosxom-2.0
http://www.blosxom.com/
■ blosxom.cgi の設定
$blog_title = "(サイト名)"; $blog_description = "(サイトの説明)"; $blog_language = "ja"; $datadir = "/path/to/blosxom_data"; $url = "http://www.domain.com/"; $plugin_dir = "/path/to/blosxom_plugins";
blosxom.cgi は http://www.domain.com/index.cgi に置く。
■ .htaccess の設定
DirectoryIndex index.html index.shtml index.cgi
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.cgi/$1 [L,QSA]
■ パーミッション設定
% chmod 755 blosxom.cgi % mkdir /path/to/blosxom_data % mkdir /path/to/blosxom_plugins % mkdir /path/to/blosxom_plugins/state % chmod 755 /path/to/blosxom_data % chmod 755 /path/to/blosxom_plugins % chmod 777 /path/to/blosxom_plugins/state
■ flavour 追加
Movable Type互換flavour をもとに変更。
あとは少しずつプグインを加えていくことにします。
■ 参考 & メモ
www.blosxom.com
blosxomサイトの日本語訳
blosxom.org
Blosxom による CMS 構築と SEO テクニック [.ppt 71k]
Standalone TrackBack (Artistic License)
TrackBack Development
lily (blosxom の ruby 版)
RSS の記事をメール送信するスクリプト(rss2mail.pl)を若干修正。
* dc:creator(投稿者$creator)取得
* dc:subject(カテゴリ名$subject)取得
* サイト名にタグが含まれる場合にデコードして表示
December 23, 2003
movabletype.org : Download から upgrade 版を入手して、問題となっているファイルだけ置き換えました。
MovableType の設置ディレクトリを $MT とすると
% cd $MT % cp /path/to/MT-2.65-upgrade/mt-send-entry.cgi . % cd $MT/lib/MT % cp /path/to/MT-2.65-upgrade/lib/MT/XMLRPCServer.pm .
MT を EUC-JP で使っている場合は、さらに NDO::Weblog からパッチを入手して XMLRPCServer.pm を修正する。
% patch < XMLRPCServer_2.65_euc.patch
とりあえずこれで良いみたいです。
December 19, 2003
December 14, 2003
随分前に送った ubench - Unix Benchmark Utility の実行結果(FreeBSD 4.5-RELEASE 2xPIII 1.4GHz 2Gb PC133 RAM)が掲載されてました。結構上位につけるかなと思ったのですが、もっといいのがありますね。
ちなみに OS だけ 4.8-RELEASE に入れ替え場合(現在)の実行結果は以下のとおり。
Ubench CPU: 141265
Ubench MEM: 82187
--------------------
Ubench AVG: 111726
ふと気になって、CGI の排他ロックなどでよく使われる flock(), mkdir(), symlink() の実行コストを比べてみた。結果は軽いほうから flock() < mkdir() < symlink() の順。
個人的には symlink() をよく利用していますが、flock() は予想通り速い。以下はテストコード。
#!/usr/bin/perl
use strict;
use Benchmark;
my $file = 'f.dat';
my $lock = 'f.lock';
my $count = shift || 1000;
my $loop = shift || 1000;
open(F, ">$file") or die "Can not open $file: $!";
timethese($count, {
flock => sub {
for (my $i = 0; $i < $loop; $i++) {
flock(F, 2);
flock(F, 8);
}
},
mkdir => sub {
for (my $i = 0; $i < $loop; $i++) {
mkdir($lock, 0755);
rmdir($lock);
}
},
symlink => sub {
for (my $i = 0; $i < $loop; $i++) {
symlink(".", $lock);
unlink($lock);
}
},
});
close(F);
__END__
実行結果
Benchmark: timing 1000 iterations of flock, mkdir, symlink...
flock: 3 wallclock secs ( 0.41 usr + 2.31 sys = 2.73 CPU)
mkdir: 144 wallclock secs ( 0.95 usr + 142.73 sys = 143.68 CPU)
symlink: 775 wallclock secs ( 1.51 usr + 125.84 sys = 127.34 CPU)
December 08, 2003
AUSGANG SOFTさんが、MT ISBN プラグイン用の Bookmarklet を作って下さいました。
MT ISBN Bookmarklet でAタグを出さない方法も参考になります。
December 05, 2003
December 04, 2003
来年のカレンダー買いました。
一つは、実用的な「白いカレンダー 2004」です。今年初めて使ってみて、書き込みやすいのが気に入りました。もう一つは、見て楽しむアート系のもの「わたせせいぞう 2004 年度カレンダー」を amazon で注文しておきました。わたせさんの作風が気に入ってます。
December 01, 2003
カテゴリごとにも RSS を出力するように設定してみました。
興味のあるカテゴリの記事だけ読みたい人向けには有効かもしれません。
archives ディレクトリ以下に各カテゴリ(xxx)ごとの cat_xxx.rdf (RSS1.0) を作成することにしました。
■Archive Template の作成
「Template の編集で」 Index Template にある RSS 1.0 Index を選択して、テンプレートの内容をそのままコピーします。
新しい Archive Template を作成します。
Template の名前は、"Category Archive RSS 1.0 Index" で作成しました。
Template の中身は、先程コピーした RSS 1.0 Index と同じでよいので、ペーストして、保存(SAVE)します。
■アーカイブの設定
「BLOG の設定」⇒「アーカイブの設定」で先程作成した新しいアーカイブテンプレートを追加します。
Archive の種類: Category
Template: "Category Archive RSS 1.0 Index"
を選択して登録します。
追加された "Category Archive RSS 1.0 Index" の Archive ファイルの Template 名 に
cat_<$MTArchiveCategory dirify="1"$>.rdf
を記入して、保存します。
■Category Archive テンプレートの編集
生成された cat_xxx.rdf をカテゴリアーカイブから参照できるようにリンクを張ります。
「Template の編集」で Category Archive のテンプレートに
<a href="<$MTBlogArchiveURL$>cat_<$MTArchiveCategory dirify="1"$>.rdf">>> Syndicate this category (XML)</a>
を追加すれば良いでしょう。
■Category のビルド
以上でカテゴリをビルドすれば、archives ディレクトリ以下に cat_xxx.rdf が追加されました。RSS 2.0 も追加したい場合は、同じように cat_xxx.xml で作成すればよいと思います。
