1 <?xml version=
"1.0" encoding=
"UTF-8"?>
2 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml" lang=
"ja" xml:
lang=
"ja"><head><!--
4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 This file is generated from xml source: DO NOT EDIT
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8 <title>mod_dav - Apache HTTP サーバ
</title>
9 <link href=
"../style/css/manual.css" rel=
"stylesheet" media=
"all" type=
"text/css" title=
"Main stylesheet" />
10 <link href=
"../style/css/manual-loose-100pc.css" rel=
"alternate stylesheet" media=
"all" type=
"text/css" title=
"No Sidebar - Default font size" />
11 <link href=
"../style/css/manual-print.css" rel=
"stylesheet" media=
"print" type=
"text/css" />
12 <link href=
"../images/favicon.ico" rel=
"shortcut icon" /></head>
14 <div id=
"page-header">
15 <p class=
"menu"><a href=
"../mod/">モジュール
</a> |
<a href=
"../mod/directives.html">ディレクティブ
</a> |
<a href=
"../faq/">FAQ
</a> |
<a href=
"../glossary.html">用語
</a> |
<a href=
"../sitemap.html">サイトマップ
</a></p>
16 <p class=
"apache">Apache HTTP サーバ バージョン
2.3</p>
17 <img alt=
"" src=
"../images/feather.gif" /></div>
18 <div class=
"up"><a href=
"./"><img title=
"<-" alt=
"<-" src=
"../images/left.gif" /></a></div>
20 <a href=
"http://www.apache.org/">Apache
</a> > <a href=
"http://httpd.apache.org/">HTTP サーバ
</a> > <a href=
"http://httpd.apache.org/docs/">ドキュメンテーション
</a> > <a href=
"../">バージョン
21 2.3</a> > <a href=
"./">モジュール
</a></div>
22 <div id=
"page-content">
23 <div id=
"preamble"><h1>Apache モジュール mod_dav
</h1>
25 <p><span>言語:
</span><a href=
"../en/mod/mod_dav.html" hreflang=
"en" rel=
"alternate" title=
"English"> en
</a> |
26 <a href=
"../ja/mod/mod_dav.html" title=
"Japanese"> ja
</a> |
27 <a href=
"../ko/mod/mod_dav.html" hreflang=
"ko" rel=
"alternate" title=
"Korean"> ko
</a></p>
29 <div class=
"outofdate">この日本語訳はすでに古くなっている可能性があります。
30 更新された内容を見るには英語版をご覧下さい。
</div>
31 <table class=
"module"><tr><th><a href=
"module-dict.html#Description">説明:
</a></th><td>分散オーサリングとバージョン管理
32 (
<a href=
"http://www.webdav.org/">WebDAV
</a>) 機能
</td></tr>
33 <tr><th><a href=
"module-dict.html#Status">ステータス:
</a></th><td>Extension
</td></tr>
34 <tr><th><a href=
"module-dict.html#ModuleIdentifier">モジュール識別子:
</a></th><td>dav_module
</td></tr>
35 <tr><th><a href=
"module-dict.html#SourceFile">ソースファイル:
</a></th><td>mod_dav.c
</td></tr></table>
38 <p>このモジュールはクラス
1 とクラス
2 の
39 <a href=
"http://www.webdav.org">WebDAV
</a>
40 ('ウェブベースの分散オーサリングとバージョン管理')
42 この HTTP プロトコルの拡張により、リモートのウェブサーバ上にある
44 作成、移動、複製、削除できるようになります。
</p>
46 <div id=
"quickview"><h3 class=
"directives">ディレクティブ
</h3>
48 <li><img alt=
"" src=
"../images/down.gif" /> <a href=
"#dav">Dav
</a></li>
49 <li><img alt=
"" src=
"../images/down.gif" /> <a href=
"#davdepthinfinity">DavDepthInfinity
</a></li>
50 <li><img alt=
"" src=
"../images/down.gif" /> <a href=
"#davmintimeout">DavMinTimeout
</a></li>
54 <li><img alt=
"" src=
"../images/down.gif" /> <a href=
"#example">Enabling WebDAV
</a></li>
55 <li><img alt=
"" src=
"../images/down.gif" /> <a href=
"#security">セキュリティの問題
</a></li>
56 <li><img alt=
"" src=
"../images/down.gif" /> <a href=
"#complex">複雑な設定
</a></li>
59 <li><code class=
"directive"><a href=
"../mod/mod_dav_fs.html#davlockdb">DavLockDB
</a></code></li>
60 <li><code class=
"directive"><a href=
"../mod/core.html#limitxmlrequestbody">LimitXMLRequestBody
</a></code></li>
61 <li><a href=
"http://www.webdav.org">WebDAV Resources
</a></li>
63 <div class=
"top"><a href=
"#page-header"><img alt=
"top" src=
"../images/up.gif" /></a></div>
65 <h2><a name=
"example" id=
"example">Enabling WebDAV
</a></h2>
66 <p>mod_dav を有効にするには、
<code>httpd.conf
</code>
67 ファイル中のコンテナに次を加えます:
</p>
69 <div class=
"example"><p><code>Dav On
</code></p></div>
71 <p>これは DAV ファイルシステムプロバイダを有効にします。DAV
72 ファイルシステムプロバイダは
<code class=
"module"><a href=
"../mod/mod_dav_fs.html">mod_dav_fs
</a></code>
73 モジュールで実装されています。ですから、このモジュールはコンパイル時に
75 <code class=
"directive"><a href=
"../mod/mod_so.html#loadmodule">LoadModule
</a></code>
76 を使用して実行時にロードされている必要があります。
</p>
78 <p>さらに、DAV ロックデータベースの場所が
79 <code class=
"directive"><a href=
"../mod/mod_dav_fs.html#davlockdb">DavLockDB
</a></code> ディレクティブを使って
80 <code>httd.conf
</code> ファイルのグローバルセクションに指定されている
83 <div class=
"example"><p><code>
84 DavLockDB /usr/local/apache2/var/DavLock
87 <p>ロックデータベースファイルのあるディレクトリは Apache が実行されている
88 <code class=
"directive"><a href=
"../mod/mpm_common.html#user">User
</a></code> と
<code class=
"directive"><a href=
"../mod/mpm_common.html#group">Group
</a></code> に書き込み権限がある必要があります。
</p>
90 <p><code class=
"directive"><a href=
"../mod/core.html#limit"><Limit
></a></code>
91 節を
<code class=
"directive"><a href=
"../mod/core.html#location"><Location
></a></code>
92 ディレクティブ内部に追加して、DAV が有効な場所への
93 アクセスを制限することもできます。DAV クライアントが
94 一度のリクエストで送信できる最大バイト数を指定したいときは、
95 <code class=
"directive"><a href=
"../mod/core.html#limitxmlrequestbody">LimitXMLRequestBody
</a></code>
96 ディレクティブを使用する必要があります。「通常の」
97 <code class=
"directive"><a href=
"../mod/core.html#limitrequestbody">LimitRequestBody
</a></code>
98 ディレクティブは DAV リクエストに対しては効力を持ちません。
</p>
100 <div class=
"example"><h3>完全な例
</h3><p><code>
101 DavLockDB /usr/local/apache2/var/DavLock
<br />
103 <Directory /usr/local/apache2/htdocs/foo
><br />
104 <span class=
"indent">
105 Order Allow,Deny
<br />
111 AuthUserFile user.passwd
<br />
113 <LimitExcept GET POST OPTIONS
><br />
114 <span class=
"indent">
115 Require user admin
<br />
117 </LimitExcept
><br />
119 </Directory
><br />
122 <p><code class=
"module"><a href=
"../mod/mod_dav.html">mod_dav
</a></code> は Greg Stein さんの
<a href=
"http://www.webdav.org/mod_dav/">Apache
1.3 用の mod_dav
</a> に
123 由来するものです。そのサイトからより多くの情報を手に入れることができます。
</p>
124 </div><div class=
"top"><a href=
"#page-header"><img alt=
"top" src=
"../images/up.gif" /></a></div>
125 <div class=
"section">
126 <h2><a name=
"security" id=
"security">セキュリティの問題
</a></h2>
128 <p>DAV のアクセスメソッドは遠隔クライアントがサーバのファイルを
129 操作することを可能にしますので、
<code class=
"module"><a href=
"../mod/mod_dav.html">mod_dav
</a></code> を使用する
130 前に、サーバが安全であることを特に注意して確認しなければなりません。
</p>
132 <p>サーバ上の DAV が使用可能になっている場所はすべて認証で保護してください。
133 HTTP 基本認証の使用は推奨できません。少なくとも
134 <code class=
"module"><a href=
"../mod/mod_auth_digest.html">mod_auth_digest
</a></code> モジュールで提供される HTTP
135 ダイジェスト認証を用いるべきです。WebDAV クライアントのほとんどは
136 この認証方法に対応しています。代わりに、
<a href=
"../ssl/">SSL
</a> が
137 有効なコネクションを通した基本認証を使うこともできます。
</p>
139 <p><code class=
"module"><a href=
"../mod/mod_dav.html">mod_dav
</a></code> がファイルを操作できるようにするためには、
140 管理下のディレクトリとファイルとに Apache が実行されている
<code class=
"directive"><a href=
"../mod/mpm_common.html#user">User
</a></code> と
<code class=
"directive"><a href=
"../mod/mpm_common.html#group">Group
</a></code> で書き込み可能である必要があります。
141 新しく作成されるファイルもこの
<code class=
"directive"><a href=
"../mod/mpm_common.html#user">User
</a></code>
142 と
<code class=
"directive"><a href=
"../mod/mpm_common.html#group">Group
</a></code> に所有される
143 ことになります。この理由から、そのアカウントへのアクセスを制御することは
144 重要です。DAV リポジトリは Apache 専用のものだとみなされています。
145 Apache 以外の方法でファイルを修正すること (例えば FTP やファイルシステム
146 用のツールなどを使って) は許可されていません。
</p>
148 <p><code class=
"module"><a href=
"../mod/mod_dav.html">mod_dav
</a></code> はいろいろな種類のサービス拒否攻撃にさらされる
149 かもしれません。
<code class=
"directive"><a href=
"../mod/core.html#limitxmlrequestbody">LimitXMLRequestBody
</a></code> ディレクティブを使うと
150 大きな DAV リクエストを解析するときに消費されるメモリの量を制限することが
151 できます。
<code class=
"directive"><a href=
"#davdepthinfinity">DavDepthInfinity
</a></code> ディレクティブは
152 <code>PROPFIND
</code> リクエストが巨大リポジトリで大量のメモリを消費するのを
153 防ぐことができます。他のサービス拒否攻撃には単純に使用可能なディスク領域を
154 多くの大きなファイルで埋めてしまうんものがあります。これを直接防ぐ方法は
155 Apache にはありませんので、信用できないユーザに DAV アクセスを提供するのは
157 </div><div class=
"top"><a href=
"#page-header"><img alt=
"top" src=
"../images/up.gif" /></a></div>
158 <div class=
"section">
159 <h2><a name=
"complex" id=
"complex">複雑な設定
</a></h2>
161 <p>よくある要求に、
<code class=
"module"><a href=
"../mod/mod_dav.html">mod_dav
</a></code> を使って動的なファイル
162 (PHP スクリプト、CGI スクリプトなど) を操作したいというものがあります。
163 これの実現は、
<code>GET
</code> リクエストはスクリプトの内容をダウンロードさせる
164 代わりに、スクリプトを常に実行させてしまうので難しくなっています。
165 これを回避する方法には、二つの違う URL を同じコンテンツにマップし、
166 一つはスクリプトを実行させ、もう一つはダウンロードさせたり、DAV から
167 操作されたりするように設定するというものがあります。
</p>
169 <div class=
"example"><p><code>
170 Alias /phparea /home/gstein/php_files
<br />
171 Alias /php-source /home/gstein/php_files
<br />
172 <Location /php-source
>
173 <span class=
"indent">
175 ForceType text/plain
<br />
180 <p>この設定により、
<code>http://example.com/phparea
</code> を PHP スクリプトの
182 <code>http://example.com/php-source
</code> を DAV クライアントによる
183 が操作のために使うことができます。
</p>
185 <div class=
"top"><a href=
"#page-header"><img alt=
"top" src=
"../images/up.gif" /></a></div>
186 <div class=
"directive-section"><h2><a name=
"Dav" id=
"Dav">Dav
</a> <a name=
"dav" id=
"dav">ディレクティブ
</a></h2>
187 <table class=
"directive">
188 <tr><th><a href=
"directive-dict.html#Description">説明:
</a></th><td>WebDAV HTTP メソッドを有効にします
</td></tr>
189 <tr><th><a href=
"directive-dict.html#Syntax">構文:
</a></th><td><code>Dav On|Off|
<var>provider-name
</var></code></td></tr>
190 <tr><th><a href=
"directive-dict.html#Default">デフォルト:
</a></th><td><code>Dav Off
</code></td></tr>
191 <tr><th><a href=
"directive-dict.html#Context">コンテキスト:
</a></th><td>ディレクトリ
</td></tr>
192 <tr><th><a href=
"directive-dict.html#Status">ステータス:
</a></th><td>Extension
</td></tr>
193 <tr><th><a href=
"directive-dict.html#Module">モジュール:
</a></th><td>mod_dav
</td></tr>
195 <p>与えられたコンテナで WebDAV HTTP メソッドが使えるようにするには
198 <div class=
"example"><p><code>
199 <Location /foo
><br />
200 <span class=
"indent">
206 <p><code>On
</code> という指定は実際には
<code class=
"module"><a href=
"../mod/mod_dav_fs.html">mod_dav_fs
</a></code>
207 で提供されているデフォルトのプロバイダ、
<code>filesystem
</code>
208 へのエイリアスになっています。一度あるロケーションで DAV
209 を有効にした後は、そのサブロケーションで
<em>無効化することはできない
</em>
210 ということに注意してください。完全な設定例は
<a href=
"#example">上記のセクション
</a> をご覧下さい。
</p>
212 <div class=
"warning">
213 サーバのセキュリティが確保できるまで WebDAV を有効にしないでください。
214 そうしなければ誰でもそのサーバでファイルを配布することができるように
219 <div class=
"top"><a href=
"#page-header"><img alt=
"top" src=
"../images/up.gif" /></a></div>
220 <div class=
"directive-section"><h2><a name=
"DavDepthInfinity" id=
"DavDepthInfinity">DavDepthInfinity
</a> <a name=
"davdepthinfinity" id=
"davdepthinfinity">ディレクティブ
</a></h2>
221 <table class=
"directive">
222 <tr><th><a href=
"directive-dict.html#Description">説明:
</a></th><td>PROPFIND, Depth: Infinity リクエストを許可します
</td></tr>
223 <tr><th><a href=
"directive-dict.html#Syntax">構文:
</a></th><td><code>DavDepthInfinity on|off
</code></td></tr>
224 <tr><th><a href=
"directive-dict.html#Default">デフォルト:
</a></th><td><code>DavDepthInfinity off
</code></td></tr>
225 <tr><th><a href=
"directive-dict.html#Context">コンテキスト:
</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ
</td></tr>
226 <tr><th><a href=
"directive-dict.html#Status">ステータス:
</a></th><td>Extension
</td></tr>
227 <tr><th><a href=
"directive-dict.html#Module">モジュール:
</a></th><td>mod_dav
</td></tr>
229 <p>'Depth: Infinity' を含んでいる
230 <code>PROPFIND
</code> リクエストを処理できるようにするには、
231 <code class=
"directive">DavDepthInfinity
</code>
232 ディレクティブを使います。このタイプのリクエストは
233 denial-of-service アタックとなりうるので、
234 デフォルトでは許可されていません。
</p>
237 <div class=
"top"><a href=
"#page-header"><img alt=
"top" src=
"../images/up.gif" /></a></div>
238 <div class=
"directive-section"><h2><a name=
"DavMinTimeout" id=
"DavMinTimeout">DavMinTimeout
</a> <a name=
"davmintimeout" id=
"davmintimeout">ディレクティブ
</a></h2>
239 <table class=
"directive">
240 <tr><th><a href=
"directive-dict.html#Description">説明:
</a></th><td>サーバが DAV リソースのロックを維持する最小時間です。
242 <tr><th><a href=
"directive-dict.html#Syntax">構文:
</a></th><td><code>DavMinTimeout
<var>seconds
</var></code></td></tr>
243 <tr><th><a href=
"directive-dict.html#Default">デフォルト:
</a></th><td><code>DavMinTimeout
0</code></td></tr>
244 <tr><th><a href=
"directive-dict.html#Context">コンテキスト:
</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ
</td></tr>
245 <tr><th><a href=
"directive-dict.html#Status">ステータス:
</a></th><td>Extension
</td></tr>
246 <tr><th><a href=
"directive-dict.html#Module">モジュール:
</a></th><td>mod_dav
</td></tr>
248 <p>クライアントが DAV リソースロックを要求した場合、
249 ロックがサーバによって自動的に解除されるまでの時間を
250 同時に指定することができます。この値は単なるリクエストであって、
252 任意の値をクライアントに通知することもできます。
</p>
254 <p>クライアントに戻すロックタイムアウトの最小時間を、
255 秒で、指定するために
<code class=
"directive">DavMinTimeout
</code>
257 マイクロソフトのウェブフォルダのデフォルトでは
120 秒ですが;
258 ネットワークの遅延のせいでクライアントがロックを失うのを減らすために、
259 <code class=
"directive">DavMinTimeout
</code> を使って
260 これをもっと大きな値 (例えば
600 秒) に上書きできます。
</p>
262 <div class=
"example"><h3>例
</h3><p><code>
263 <Location /MSWord
><br />
264 <span class=
"indent">
265 DavMinTimeout
600<br />
272 <div class=
"bottomlang">
273 <p><span>言語:
</span><a href=
"../en/mod/mod_dav.html" hreflang=
"en" rel=
"alternate" title=
"English"> en
</a> |
274 <a href=
"../ja/mod/mod_dav.html" title=
"Japanese"> ja
</a> |
275 <a href=
"../ko/mod/mod_dav.html" hreflang=
"ko" rel=
"alternate" title=
"Korean"> ko
</a></p>
276 </div><div id=
"footer">
277 <p class=
"apache">Copyright
2009 The Apache Software Foundation.
<br />Licensed under the
<a href=
"http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version
2.0</a>.
</p>
278 <p class=
"menu"><a href=
"../mod/">モジュール
</a> |
<a href=
"../mod/directives.html">ディレクティブ
</a> |
<a href=
"../faq/">FAQ
</a> |
<a href=
"../glossary.html">用語
</a> |
<a href=
"../sitemap.html">サイトマップ
</a></p></div>