[1] SuikaWiki 3 には、次のソフトウェアが必要です。
CGI::Carp
$
を \$
などと escape しないといけないかもしれません)cpan> install Jcode
cpan> install BerkeleyDB
cpan> install MLDBM
wikidata/suikawiki-config.ph
を修正してください。Char::Class
に依存しているので、こちらも用意して下さい。[2] SuikaWiki を入手して適当なディレクトリに配置してください。 最新の SuikaWiki 開発版は https://suika.suikawiki.org/gate/cvs/suikawiki/script/ から入手できます。
[3] WikiPlugin module を compile します。
中核 plugin module をすべて compile:
$ cd lib/SuikaWiki/Plugin/; make all
その他の plugin module を compile: $ cd misc/plugins/; make modulename.pm
misc/plugins/
以下にある plugin
module は、無くても動作しますので、必要に応じて
compile して下さい。
各 plugin module の提供する機能は file 名からおおよそ想像がつくはずです。
misc/plugins/SuikaWiki09.pm
と misc/plugins/format/SuikaWikiConst09.pm
はとりあえず compile しておくことをお勧めします。
(これがないとおそらく楽しくありません。)
[4] 個々の wiki のデータベースおよび設定をまとめたディレクトリ wikidata/
を用意します。
SuikaWiki を初めて使用する場合には、
default/
を wikidata/
に名前変更してください。
その後、
$ cd wikidata/; make all
して下さい。
SuikaWiki2 を利用されていた場合は、 ..//SuikaWiki2からの移行もご覧下さい。
[5] SWHCS (SuikaWiki HTTP‐CGI‐Script Driver) は、 WWW から wiki に access するための CGIスクリプトです。
wiki.cgi
を WWW 鯖で公開されている適当なディレクトリに入れて、
実行権限を与えて適当に鯖の設定をしてください。
(Apache 用の .htaccess
があるので参考にしてください。)
SuikaWiki の他のディレクトリ (lib/
や wikidata/
など) は、
wiki.cgi
と同じディレクトリに入れればそのまま使えます。
他の場所に置きたい時には、
wiki.cgi
と wikidata/suikawiki-config.ph
の最初の方にあるディレクトリ・ファイル名を修正してください。
[6] 設定ファイルは wikidata/
にあります。
現在のところ
suikawiki-config.ph
と config.ph
の二種類があります。
suikawiki-config.ph
は Perl のスクリプトで、
wiki の低レベルの静的な設定 (たとえばデータベースのファイル名) を記述します。
config.ph
は、 config.wp2
から
make config.ph として作成します。
config.wp2
は、 SuikaWiki 3 の WikiPlugin
の書式で記述します。内容は他の plugin module
で書けることは何でも書けます。
たとえば navigation panel に特定の WikiPage に飛ぶボタンを加えたり、 特定のメッセージ (利用者への案内など。) を本来の WikiPage の内容に加えて出力したりできます。
[10] 十分整った環境(謎)で何も考えずに wiki.cgi を導入する手順は次の通りです (2004年4月30日現在)。
$ perl -MCPAN -eshell
cpan> install Jcode
cpan> q
$ wget http://suika.fam.cx/gate/cvs/suikawiki/script/script.tar.gz?tarball=1
$ tar zvxf script.tar.gz
$ rm script.tar.gz
$ mv script wiki
$ cd wiki/lib
$ wget http://suika.fam.cx/gate/cvs/messaging/manakai/lib/Message/Message.tar.gz?tarball=1
$ tar zvxf Message.tar.gz
$ wget http://suika.fam.cx/gate/cvs/perl/charclass/lib/Char/Char.tar.gz?tarball=1
$ rm Char.tar.gz
$ cd Char/Class
$ make
$ cd ../..
$ make
$ cd ../misc/plugins
$ make
$ rm request-log.pm
;; 他、要らない plugin の .pm を消す$ cd ../..
$ mv default wikidata
$ cd wikidata
$ make
これで (きっと) 動くようになります。
A: SuikaWiki3 の code は原則的に実行システム非依存ですので、 Perl があるどんな環境でも動くはずです (但し、 EBCDIC 版 Perl を除きます)。
手元で試した限りでは、 ActivePerl + Apache 2 で問題なく動作しました。 Cygwin 版でもおそらく動くでしょう。
但し、 make などが用意されていない場合には
Makefile
に書かれている準備作業をすべて手動で行うことになりますから、
多少の知識と手間が必要となります。 (Cygwin を入れておくとよいでしょう。)
[14] Q: 他の wiki や CGI スクリプトでは関連ファイルのパスや URI を指定しなければならないものが多いですが、 SuikaWiki でも必要ですか?
A: 通常は SuikaWiki3 が自動的に決定しますので、 そのような設定は不要です。
ただし、好みでディレクトリ構成を変えたり、ウェブ鯖の redirect
機能を使ったりする場合には、 wiki.cgi
や wikidata/suikawiki-config.ph
を修正する必要があるかもしれません。
[13] Q: 実行すると /main.0.0.0.lock
が作成できないというようなメッセージが出力されます。
A: このエラーは wikidata/lock
というディレクトリが存在しない時に発生します。
ディレクトリを作成すれば解決します。
(古い版を使っている場合以外は make で自動的にディレクトリが作られますからこの問題は発生しません。)
[12] Q: 実行すると WikiDB で致命的誤りが発生したというメッセージが出力されます。 しかし誤りの詳細は出力されないか、または SuikaWikiConst/0.9 の変換がなんちゃらというものだけしか出てきません。
A: このエラーは wikidata/cache
というディレクトリが存在しない時に発生するようです。
ディレクトリを作成すれば解決するはずです。
(古い版を使っている場合以外は make で自動的にディレクトリが作られますからこの問題は発生しません。)
[15] Q: この wiki (SuikaWiki @ suika.fam.cx) の設定を教えて下さい。
A: この wiki の設定ファイルは IW:SuikaCVS:"suikawiki/wikidata/suikawiki-config.ph", IW:SuikaCVS:"suikawiki/wikidata/config.wp2" です。 参考にして下さい。
[7] わからないことなどがあればお気軽にどうぞ。
[13] Search plugin module (misc/plugins/link/search.wp2
)
は、 WikiPage の数が多くなると処理に大変時間がかかるようになります。
頻繁に access がある鯖で運用すると危険です。
その場合、 Namazu plugin (misc/plugins/link/namazu.wp2
)
を併用して下さい。 (別途 Namazu http://www.namazu.org/
と Namazu を使用して作成した wiki の索引が必要です。)
[8] 頻繁に access される site で Referer, RequestLog, Map plugin を使用されると危険なことになります。ご注意ください。
この問題を回避した版は現在開発中です。 (名無しさん 2004-03-14 13:57:49 +00:00)
[9] >>8 Referer plugin のこの問題は修正しました。 RequestLog は準備中です。 Map plugin と Search plugin (旧 Map plugin) も基本的に修正しましたが、 Search plugin の部分は構造上修正が困難なので、頻繁に access される site では Namazu plugin と併用して回避してください。 (名無しさん 2004-04-26 07:43:50 +00:00)