GCS Amplitude
GCS Amplitude

Apache モジュール mod_dav

これは DAV ファイルシステムプロバイダを有効にします。DAV ファイルシステムプロバイダは

モジュールで実装されています。ですから、このモジュールはコンパイル時に サーバに組み込まれているか、あるいは moddavfs

DavLockDB /usr/local/apache2/var/DavLock

ディレクティブ内部に追加して、DAV が有効な場所への アクセスを制限することもできます。DAV クライアントが 一度のリクエストで送信できる最大バイト数を指定したいときは、

ディレクティブは DAV リクエストに対しては効力を持ちません。LimitRequestBody

DavLockDB /usr/local/apache2/var/DavLock Require all granted Dav On AuthType Basic AuthName DAV AuthUserFile user.passwd Require user admin

サーバ上の DAV が使用可能になっている場所はすべて認証で保護してください。 HTTP 基本認証の使用は推奨できません。少なくとも

モジュールで提供される HTTP ダイジェスト認証を用いるべきです。WebDAV クライアントのほとんどは この認証方法に対応しています。代わりに、modauthdigestSSL が 有効なコネクションを通した基本認証を使うこともできます。

がファイルを操作できるようにするためには、 管理下のディレクトリとファイルとに Apache が実行されている mod_dav

に所有される ことになります。この理由から、そのアカウントへのアクセスを制御することは 重要です。DAV リポジトリは Apache 専用のものだとみなされています。 Apache 以外の方法でファイルを修正すること (例えば FTP やファイルシステム 用のツールなどを使って) は許可されていません。Group

ディレクティブを使うと 大きな DAV リクエストを解析するときに消費されるメモリの量を制限することが できます。LimitXMLRequestBody

リクエストが巨大リポジトリで大量のメモリを消費するのを 防ぐことができます。他のサービス拒否攻撃には単純に使用可能なディスク領域を 多くの大きなファイルで埋めてしまうんものがあります。これを直接防ぐ方法は Apache にはありませんので、信用できないユーザに DAV アクセスを提供するのは 避けた方が良いでしょう。

Alias /phparea /home/gstein/phpfiles Alias /php-source /home/gstein/phpfiles Dav On ForceType text/plain

この設定により、http://example.com/phparea

を PHP スクリプトの 出力をアクセスするために使うことができ、 http://example.com/php-source

を DAV クライアントによる が操作のために使うことができます。

Dav On|Off|provider-name

へのエイリアスになっています。一度あるロケーションで DAV を有効にした後は、そのサブロケーションで無効化することはできない ということに注意してください。完全な設定例は上記のセクション をご覧下さい。

クライアントに戻すロックタイムアウトの最小時間を、 秒で、指定するために DavMinTimeout

ディレクティブを使います。 マイクロソフトのウェブフォルダのデフォルトでは 120 秒ですが; ネットワークの遅延のせいでクライアントがロックを失うのを減らすために、 DavMinTimeout

を使って これをもっと大きな値 (例えば 600 秒) に上書きできます。

モジュール | ディレクティブ | FAQ | 用語 | サイトマップ

Apache HTTP サーバ バージョン 2.4

Apache モジュール mod_dav

翻訳済み言語: en | fr | ja | ko

Enabling WebDAV

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

セキュリティの問題

DAV のアクセスメソッドは遠隔クライアントがサーバのファイルを 操作することを可能にしますので、 mod_dav を使用する 前に、サーバが安全であることを特に注意して確認しなければなりません。

複雑な設定

よくある要求に、mod_dav を使って動的なファイル (PHP スクリプト、CGI スクリプトなど) を操作したいというものがあります。 これの実現は、GET リクエストはスクリプトの内容をダウンロードさせる 代わりに、スクリプトを常に実行させてしまうので難しくなっています。 これを回避する方法には、二つの違う URL を同じコンテンツにマップし、 一つはスクリプトを実行させ、もう一つはダウンロードさせたり、DAV から 操作されたりするように設定するというものがあります。

Dav ディレクティブ

与えられたコンテナで WebDAV HTTP メソッドが使えるようにするには 次のようにします。

DavDepthInfinity ディレクティブ

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

DavMinTimeout ディレクティブ

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