mod_dav
分散オーサリングとバージョン管理 (WebDAV) 機能
Extension
mod_dav.c
dav_module

このモジュールはクラス 1 とクラス 2 の WebDAV ('ウェブベースの分散オーサリングとバージョン管理') 機能を Apache に提供します。 この HTTP プロトコルの拡張により、リモートのウェブサーバ上にある リソースやコレクションを 作成、移動、複製、削除できるようになります。

mod_dav を有効にするには、`httpd.conf` ファイル中のコンテナに次を加えます:

Dav On

同時に `httpd.conf` ファイルの グローバルセクションに次を加えることによって、 DAV ロックデータベースのために使う 正当なファイル名を指定します:

DavLockDB /tmp/DavLock (ウェブサーバの書き込めるファイル名で、 拡張子のないもの)
Dav
WebDAV HTTP メソッドを有効にします
Dav on|off
Dav off
directory

与えられたコンテナで WebDAV HTTP メソッドが使えるようにするには、 Dav ディレクティブを使います。 DAV を有効にした場所へのアクセスを制限するためには、 Location ディレクティブ内部に Limit 節を加えます。

# 例

DavLockDB /tmp/DavLock
<Location /foo>
Dav On
AuthType Basic
AuthName DAV
AuthUserFile user.passwd
<LimitExcept GET HEAD OPTIONS>
require user admin
</LimitExcept>
</Location>
DavLockDB
DAV ロックデータベースの位置です
DavLockDB file-path
server config
virtual host

ロックデータベースへのフルパスを、拡張子を除いた形で 指定するには、DavLockDB を使います。デフォルトの mod_dav の (ファイルシステム) 実装では、ユーザロックを 追跡するために SDBM データベースを使います。サーバからは、 ロックデータベースに入っている全てのロックを表示するために `modules/dav/util/lockview` ユーティリティを使用できます。

# 例

DavLockDB /tmp/DavLock
DavMinTimeout
サーバが DAV リソースのロックを維持する最小時間です。
DavMinTimeout seconds
DavMinTimeout 0
directory

クライアントが DAV リソースロックを要求した場合、 ロックがサーバによって自動的に解除されるまでの時間を 同時に指定することができます。この値は単なるリクエストであって、 サーバはこれを無視することもできますし、 任意の値をクライアントに通知することもできます。

クライアントに戻すロックタイムアウトの最小時間を、 秒で、指定するために DavMinTimeout ディレクティブを使います。 マイクロソフトのウェブフォルダのデフォルトでは 120 秒ですが； ネットワークの遅延のせいでクライアントがロックを失うのを減らすために、 DavMinTimeout を使って これをもっと大きな値 (例えば 600 秒) に上書きできます。

# 例

<Location /MSWord>
DavMinTimeout 600
</Location>
DavDepthInfinity
PROPFIND, Depth: Infinity リクエストを許可します
DavDepthInfinity on|off
DavDepthInfinity off
directory

'Depth: Infinity' を含んでいる PROPFIND リクエストを処理できるようにするには、 DavDepthInfinity ディレクティブを使います。このタイプのリクエストは denial-of-service アタックとなりうるので、 デフォルトでは許可されていません。