mod_dav
Apache
mod_davとは
mod_davを使用すると、ApacheでWebDAV機能を提供できるようになります。
インストール
1.0.3の例です。
以降、ApacheがDSO対応で既にインストールされていることを前提にしています。
mod_davの配布サイトからアーカイブを取得し、展開します。
% gzip -dc mod_davmod_dav-1.0.3-1.3.6.tar.gz | tar xvf - % cd mod_dav-1.0.3-1.3.6
あとはお決まりの手順なのですが、configure時に apxs の path を指定する必要があります。
また、私の環境では expat の path も指定しないと、インストール後にリンクエラーが出てしまいましたので、--with-expat
で指定しています。
% ./configure --with-apxs=/usr/local/apache/bin/apxs --with-expat=/usr/local/apache % make % su # make install
設定
make install
で自動的に追記されているはずですが、httpd.confでdav_moduleを読み込むように指定されていることを確認します。
LoadModule dav_module libexec/libdav.so
あとは、以下のようにWebDAV機能を提供したいURLに対しての挙動を設定します。
<Location /dav> DAV On <Limit PUT DELETE PROPPATCH MKCOL COPY MOVE LOCK UNLOCK> Require user admin </Limit> </Location>
上記では、コピー、移動、削除等ほとんどの操作をadmin以外のユーザーで無効としています。
WebDAVの開き方
IEであれば [ ファイル ] - [ 開く ] - "Web フォルダとして開く" にチェックを入れてURLを指定して開けばWebDAVのフォルダとして開くことができます。
Firefoxではプラグインが必要のようです。
また、上記のようにURLを指定するのではなく、リンク先をWebDAVとして開きたい場合には、以下のように記述するとIEではWebDAVとして開き、Firefoxではhrefのリンク先を普通に開くような挙動となるようです。
※Firefoxの WebDAV関係のプラグインの挙動は未確認
<a style="behavior: url('#default#AnchorClick')" href="http://xxx.xxx/dav/" Folder="http://xxx.xxx/dav/">WebDAV領域</a>
日本語について
mod_davでは日本語のファイル名を使用する場合に問題があるようです。
※私はWebDAVは参照オンリーで使用しているので、特に問題になったことがない
日本語回りの問題を解消するには、mod_encodingというものを使うとよいようです。
WebDAV Resources JPにて配布されています。