PyukiWiki

編集
※2016/02月時点では、最新のPyukiWiki であれば下記のような設定はいらないようです。
また、lacoocanへ移行が必須となっているので、更に不要になりました。

基本的な設定は、下記のYuKiwiki?の方法と同様
しかし、変更するのはそれほど多くないので、結果的には
こっちのほうが設置は楽かもしれない。

pyukiwiki.ini.cgiの変更点
diffをとったものですが、少々編集してるのでパッチとしてはそのままでは使えません。
以下、の部分をに書き換えます。@@〜@@でくくられた部分が行番号です。
設置ディレクトリは、任意で掘り下げても問題ないです。
--- pyukiwiki.ini.cgi	Tue Jun  1 19:09:00 2004
+++ pyukiwiki.ini.cgi	Fri Jul 16 00:44:00 2004
@@ -9,12 +9,12 @@
use strict;

# Modifier Info.
-$::modifierlink = 'http://Change me!/';
-$::modifier = 'Nekyo';
+$::modifierlink = 'http://hpcgi○.nifty.com/CGIを設置するディレクトリ/';
+$::modifier = '名前';
 $::modifier_mail = '';

 $::modifier_dir_data = '.'; # Your data directory (not URL, but DIRECTORY).
-$::modifierlink_data = '.'; # Your data URL (not DIRECTORY, but URL).
+$::modifierlink_data = 'http://homepage○.nifty.com/CGIに必要なファイルを置くディレクトリ'; # Your 

data URL (not DIRECTORY, but URL).
 $::icontag = qq(<img id="logo" src="$::modifierlink_data/pyukiwiki.png" width="80" height="80" 

alt="[PyukiWiki]" title="[PyukiWiki]" />);
 
 # Language
wiki.cgiの変更点
上記同様
--- wiki.cgi	Tue Jun  1 19:11:00 2004
+++ wiki.cgi	Fri Jul 16 00:27:00 2004
@@ -29,7 +29,7 @@
 my $use_Jcodepm = 0;
 require 'jcode.pl';

-use Fcntl;
+#use Fcntl;
 # Check if the server can use 'AnyDBM_File' or not.
 # eval 'use AnyDBM_File';
 # my $error_AnyDBM_File = $@;
@@ -83,7 +83,7 @@
 my $editchar = '?';
 my $subject_delimiter = ' - ';
 my $use_autoimg = 1; # automatically convert image URL into <img> tag.
-my $use_exists = 0; # If you can use 'exists' method for your DB.
+my $use_exists = 1; # If you can use 'exists' method for your DB.
 #my $use_FixedFrontPage = 0;
 ##############################
 my $InterWikiName = 'InterWikiName';
@@ -870,8 +870,8 @@
		dbmopen(%::database, $::dataname, 0666) or &print_error("(dbmopen) $::dataname");
		dbmopen(%infobase, $infoname, 0666) or &print_error("(dbmopen) $infoname");
	} elsif ($modifier_dbtype eq 'AnyDBM_File') {
-		tie(%::database, "AnyDBM_File", $::dataname, O_RDWR|O_CREAT, 0666) or &print_error("(tie AnyDBM_File) $::dataname");
-		tie(%infobase, "AnyDBM_File", $infoname, O_RDWR|O_CREAT, 0666) or &print_error("(tie AnyDBM_File) $infoname");
+#		tie(%::database, "AnyDBM_File", $::dataname, O_RDWR|O_CREAT, 0666) or &print_error("(tie AnyDBM_File) $::dataname");
+#		tie(%infobase, "AnyDBM_File", $infoname, O_RDWR|O_CREAT, 0666) or &print_error("(tie AnyDBM_File) $infoname");
 	} else {
		tie(%::database, "Yuki::YukiWikiDB", $::dataname) or &print_error("(tie Yuki::YukiWikiDB) $::dataname");
		tie(%infobase, "Yuki::YukiWikiDB", $infoname) or &print_error("(tie Yuki::YukiWikiDB) $infoname");
@@ -895,7 +895,7 @@
	if ($modifier_dbtype eq 'dbmopen') {
		dbmopen(%::diffbase, $diffname, 0666) or &print_error("(dbmopen) $diffname");
	} elsif ($modifier_dbtype eq 'AnyDBM_File') {
-		tie(%::diffbase, "AnyDBM_File", $diffname, O_RDWR|O_CREAT, 0666) or &print_error("(tie AnyDBM_File) $diffname");
+#		tie(%::diffbase, "AnyDBM_File", $diffname, O_RDWR|O_CREAT, 0666) or &print_error("(tie AnyDBM_File) $diffname");
	} else {
		tie(%::diffbase, "Yuki::YukiWikiDB", $diffname) or &print_error("(tie Yuki::YukiWikiDB) $diffname");
	}

YukiWikiDB.pmの変更点
上記同様
--- YukiWikiDB.pm       Tue Feb 17 00:38:00 2004
+++ YukiWikiDB.pm       Thu Jul
15 23:27:00 2004
@@ -1,7 +1,7 @@
 package Yuki::YukiWikiDB;

 use strict;
-use Fcntl ':flock';
+#use Fcntl ':flock';

 # Constructor
 sub new {

@NiftyへのYukiWiKi設置情報まとめ

編集
基本的な修正の情報
http://hpcgi2.nifty.com/tokd/index.cgi?HowToSetUpYukiWikiAtNifty
ポイント
重要点は以下
  • @niftyで実装しているPerlのバージョンが古いことに対する
    ライブラリの追加作業。*1
    ファイルは、上記リンクから取得可能。
  • CGIを設置するのは、/cgi-bin配下。
    画像・CSSを設置するのは、/homepage配下。
    その下の構成は、HP固有なため、任意。
  • パーミッションも忘れずにチェック。

個別の修正

編集
  • DBエラーになるので、エラーをはいてるDBのスクリプトのFctlの記述もコメントにする。
  • プラグインが使えないので、PluginManager?.pmのコメントを外す。

その他のCGI版WiKi?

編集
プラグイン追加等、機能追加の情報
http://www.ps23.org/tamio/YukiWiki/wiki.cgi?ChangeLog#i0
PyukiWikiのダウンロード
http://nekyo.hp.infoseek.co.jp/cgi-bin/wiki/wiki.cgi

*1 Windows用/BSD用/Linux用といったところからPerlのライブラリを転用する必要があるが、最新バージョンではないことに注意