【Wiki比較用】お試し用PukiWikiサイトの作成と公開用セキュリティ設定

2022-03-19

PukiWikiのビジュアルエディタを無理やり導入していましたが、開発者の方がプラグイン自体に組み込んで下さったのでもっとスマートに使えるようになりました。

DokuWikiでは少し前に、社内の情報共有やナレッジベースの構築でWikiの導入を考えている方が雰囲気を見れるようにお試しサイトを作っていますが、ビジュアルエディタがきれいに動くようになったので、今回PukiWikiも公開しました(MediaWikiは…レンタルサーバーではビジュアルエディタが使えないので今のところ未公開です)。

PukiWikiお試しサイト

すいませんが、現在はお試しサイトの公開は中止しています。

DokuWikiお試しサイト

すいませんが、現在はお試しサイトの公開は中止しています。

業務日報システム追加

ローカルでWikiテスト環境を構築する手順

導入時の注意点(覚え書き)

ビジュアルエディタを使う場合、本来ファイルアップロード権限がないユーザーでもアップロードできるようになります。

編集権限等の追加

pukiwiki.ini.phpを編集します。

Adminパスワードの設定

192行目にmd5でハッシュ化したパスワードを入力

$adminpass = '{x-php-md5}************';

使わないユーザーのコメントアウト

258行目から264行目、’foo’ ’bar’ ’hoge’は使わないのでコメントアウトします。

$auth_users = array(
	// Username => password
        'admin' => '{x-php-md5}************',
        'guest' => '{x-php-md5}************',
	//'foo'	=> 'foo_passwd', // Cleartext
	//'bar'	=> '{x-php-md5}f53ae779077e987718cc285b14dfbe86', // PHP md5() 'bar_passwd'
	//'hoge'	=> '{SMD5}OzJo/boHwM4q5R+g7LCOx2xGMkFKRVEx',      // LDAP SMD5 'hoge_passwd'
);

編集できるページの制限追加

297行目

$edit_auth = 1;

299行目以降を編集してguestユーザーはplaygroundだけ編集できるようにします。

$edit_auth_pages = array(
	// Regex		   Username
        '##'                    => 'admin',
        '#playground#'          => 'guest',
	'#BarDiary#'		=> 'bar',
	'#HogeHoge#'		=> 'hoge',
	'#(NETABARE|NetaBare)#'	=> 'foo,bar,hoge',
);

その他

必要に応じて閲覧制限や検索制限を追加してください。

ビジュアルエディタ(easyedit.inc.php)

レンタルサーバーのリバースプロキシでURLと内部パスが変わるためか、初期設定では動作しませんでした。そのため、ひとまず動かすためにURLは直打ちしています。

変更ファイル:easyedit – config.js

変更前(30行目付近)

if (kcfinder) {
		config.filebrowserImageBrowseUrl = $easyedit_path + 'kcfinder/browse.php?type=images' + '&upload_dir_url=' + upload_dir_url;
		config.filebrowserImageUploadUrl = $easyedit_path + 'kcfinder/upload.php?type=images' + '&upload_dir_url=' + upload_dir_url; 
		config.filebrowserBrowseUrl = $easyedit_path + 'kcfinder/browse.php?type=files' + '&upload_dir_url=' + upload_dir_url;
		config.filebrowserUploadUrl = $easyedit_path + 'kcfinder/upload.php?type=files' + '&upload_dir_url=' + upload_dir_url;
	}

変更後

if (kcfinder) {
		config.filebrowserImageBrowseUrl = 'https://PukiWikiサイトのURL/easyedit/kcfinder/browse.php?type=images' + '&upload_dir_url=' + 'https:/PukiWikiサイトのURL/easyedit/kcfinder/upload/';
		config.filebrowserImageUploadUrl = 'https://PukiWikiサイトのURL/easyedit/kcfinder/upload.php?type=images' + '&upload_dir_url=' + 'https://PukiWikiサイトのURL/easyedit/kcfinder/upload/';
		config.filebrowserBrowseUrl = 'https://PukiWikiサイトのURL/easyedit/kcfinder/browse.php?type=files' + '&upload_dir_url=' + 'https://PukiWikiサイトのURL/easyedit/kcfinder/upload/';
		config.filebrowserUploadUrl = 'https://PukiWikiサイトのURL/easyedit/kcfinder/upload.php?type=files' + '&upload_dir_url=' + 'https://PukiWikiサイトのURL/easyedit/kcfinder/upload/';
	}

美しくはありませんが、とりあえず動いています。

Basic認証

KCFinderの設定とファイルアップロード機能の注意点は以下の参考サイトをご覧ください。

認証プログラムを作る技術が無いので、手っ取り早く対応するためにBasic認証にしました。

途中経過の記事