pukiwiki添付ファイル用のWebDAVもどきインタフェースの話
pukiwikiシステムを使う上で、複数のファイルを
ブラウザのインタフェースでアップロードするのは面倒である。
そこで、Windows XP等に実装されているWebDAVのインタフェースを利用して、
ドラッグ&ドロップでファイルをアップロードできる様にしてみた。
図: このようなフォルダのウィンドウでドラッグ&ドロップできます
|
現在: Version 0.38(試作品レベル)
前提
- PHP5以上を使用していること
- phpにdomが入っていること(CentOS5.4ならphp-xmlパッケージ)
- サーバのドキュメントルート直下にファイルを置けること
インストール
- まず、このphpファイルをbzip2で圧縮したもの
をダウンロードし、元のphpファイルに伸長します。
- dav.phpファイル内部の以下の行をサーバの状況に合わせて修正します。
パス名のの最後の'/'は忘れないでください。
define('DATA_HOME', '/var/www/html/pukiwiki/');
define('LIB_DIR', '/var/www/html/pukiwiki/lib/');
- dav.phpファイルを、サーバのドキュメントルートに置き、
適切なアクセス制御を施してください。
(サーバが「www.example.com」なら、
必要な人のみが「http://www.example.com/dav.php」で
アクセスできるようにするということ)
使用法
Windows XPの場合、「ネットワークコンピュータ」の
「ネットワークプレースを追加する」で、
Webフォルダを追加してください。
図: 「ネットワークプレースを追加する」の場所
|
このとき「インターネットまたはネットワークのアドレス」で、
ファイル名の最後に「?」を追加してください。
たとえば、www.example.comのサーバの場合、
「http://www.example.com/dav.php?」のように打ち込みます。
(ただし、httpsを使う場合やポート番号を明示する場合、
Windows 7の場合は「?」は不要です。)
Webフォルダが作られたら、
pukiwikiのページ名がフォルダとして見えるはずですので、
添付したいページのフォルダを開き、
ファイルをドラッグ&ドロップしてください。
可能なのはファイルのドラッグアンドドロップと削除、
ファイル名の変更のみであり、
新規フォルダの作成や、フォルダの名前の変更、
ダブルクリックによる「開く」動作などはできません。
WindowsXP以外で試したのは、cadaverぐらいですが、一応動いていました。
注意点
繰り返しもありますが、注意点をまとめてみます。
- このプログラムは試作品です。
そこまで変なことはしないと思いますが、注意して使ってください。
- セキュリティのため、
既存のpukiwkiのシステムと同程度のアクセス制御を、
このdav.phpファイルに対して掛けて下さい。
- Windows XPの問題により、
ドキュメントルート直下にこのファイルを置く必要があります。
(mod_rewriteなどで工夫する場合は、また別です)
(Windows 7なら別な場所でもOKなようです。)
- WindowsXPの問題により、httpでアクセスする場合、
URLの最後に「?」をつけるか、
ポート番号を明示するかしないと、
勝手にマイクロソフト共有でアクセスしようとします。
- Windowsの問題により、
大文字のみで8.3文字の形式のファイル/ディレクトリは、
アクセスできません。
- このプログラムの問題により、
全角の「/」をふくむページは添付の場所として利用できません。
- Windowsとこのプログラムのやりとりの問題により、
パスワードの再入力はできません(多分)。
もし必要なら、再ログインか、
再度ネットワークプレースの削除と再追加を行って下さい。
- ライセンスはpukiwikiにならいます。
- (2010/5/15 少し機能を強化しました)
- (2010/5/21 アクセス制限の影響を受けるようにしました)