続き
今回使用したソフトウェアのバージョン
7wiki v1.1.1
pukiwiki 1.4.7_notb_utf8
個人的にBlogは好きではない。
カテゴリ記事を過去から順に読むという極めて需要の高い機能を何故かどのブログシステムも搭載していないからだ。
例えばこのブログ、カテゴリ別の記事をクリックしたときに期待する動きは、カテゴリ毎のタイトルと投稿日一覧である。
しかし実際には、ジャンルの記事が新しい順に表示されるだけ。
記事を時系列順に読むという行動が極めて行いにくいシステムになっている。
結果的にBlogは知識の蓄積に向いておらず、断片的な記述しか受け入れられない。
というわけでWikiだ。
Wikiとは要するに、昔はローカルでHTMLファイルを作って追記や削除があったら修正してFTPでアップして、なんてやってたことを全部Web上でやっちまおうというステキプロジェクトなのであって、辞書や纏めサイトなどにのみ使わなければならないなどという掟は別にない。
新しいページも簡単に作成できるし並び順も思いのまま、追記もコメントと同等のコスト(実装による)という便利なWikiを使わない手はないだろう。
というわけでとりあえず手始めに7Wikiを試してみる。
http://cm.xrea.cc/prog/7wiki.shtml
ソースコードはそこに載っているのが全て。
一行目を自分の環境に合わせれば終わりである。
index.pl
#!/usr/bin/perl use CGI":all";charset$c="EUC-JP";$w='\b(([A-Z][a-z]+){2,})';$f=script_name;$/=( );($p)=path_info=~/$w/;$p||=FrontPage;request_method=~PO&!($m=param z)&&unlink$ p;open F,$m?">$p":$p;eval{flock F,2};print F$m||=<F>;$_=pre(escapeHTML$m).hr.ul map{li"".localtime((stat)[9]),$_}sort{-M$a<=>-M$b}grep/^$w$/&-f,<*>;s|$w|(!-f$1 &&$1).a{href,"$f/$1"},-f _?$1:"?"|eg;put header,start_html(-Title,$p,encoding,$ c,lang,ja),h1($p),startform(0,"$f/$p"),p(textarea(z,$m,6,60),br,submit),endform ,hr,$_,end_html |
Wikiとってもメモくらいにしか使えないが、この長さでこの性能は驚きだ。
解析しようと思ったら日が暮れるのは間違いない。
ただ、正規表現が何故([A-Z][a-z]+){2,}なのかはよくわからない。
さて手慰みはこれくらいにして、それでは本格的にPukiWikiを入れてみる。
http://pukiwiki.sourceforge.jp/
ごく普通にダウンロードして解凍、適当なフォルダに突っ込むだけである。
今回はC:\xampp\htdocs\src\wiki\pukiに置いてみた。
http://localhost/src/wiki/puki/
ブラウザからアクセスしてみると、何もしていないのにあっさり表示成功。
恐ろしいまでの敷居の低さである。
デフォルト設定では管理用パスなどが漏れ放題なので、そこらへんの設定を行う。
/pukiwiki.ini.php
$modifier = 'NurseAngel'; $modifierlink = 'http://yuubiseiharukana.blog.shinobi.jp/'; $adminpass = '{x-php-md5}1a1dc91c907325c69271ddf0c944bc72' //'pass'のMD5ハッシュ |
以上で設定も終了である。
Linux環境であればパーミッションなどの設定が必要だが、今回はローカルなのでその必要もなし。
勿論インターネットに公開するのであればそこらの設定も必須である。
さて、Wikiと聞いて身構えてはいたものの、実際の導入コストは簡単と言われているCakePHPより遥かに易しいという驚きの結果が待っていた。
勿論設置後の運営が大変なのはWikiである。
とりあえず日記でも書いておけばいいブログと違って、中身がなければ見向きもされないからな。