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 7 --> 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" /><link rel="stylesheet" type="text/css" href="/style/css/prettify.css" /> 12<script src="/style/scripts/prettify.js" type="text/javascript"> 13</script> 14 15<link href="/images/favicon.ico" rel="shortcut icon" /></head> 16<body> 17<div id="page-header"> 18<p class="menu"><a href="/mod/">モジュール</a> | <a href="/mod/directives.html">ディレクティブ</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">用語</a> | <a href="/sitemap.html">サイトマップ</a></p> 19<p class="apache">Apache HTTP サーバ バージョン 2.2</p> 20<img alt="" src="/images/feather.gif" /></div> 21<div class="up"><a href="./"><img title="<-" alt="<-" src="/images/left.gif" /></a></div> 22<div id="path"> 23<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="../">バージョン 2.2</a> > <a href="./">モジュール</a></div> 24<div id="page-content"> 25<div id="preamble"><h1>Apache モジュール mod_dav</h1> 26<div class="toplang"> 27<p><span>翻訳済み言語: </span><a href="/en/mod/mod_dav.html" hreflang="en" rel="alternate" title="English"> en </a> | 28<a href="/ja/mod/mod_dav.html" title="Japanese"> ja </a> | 29<a href="/ko/mod/mod_dav.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p> 30</div> 31<div class="outofdate">この日本語訳はすでに古くなっている 32 可能性があります。 33 最近更新された内容を見るには英語版をご覧下さい。 34 </div> 35<table class="module"><tr><th><a href="module-dict.html#Description">説明:</a></th><td>分散オーサリングとバージョン管理 36(<a href="http://www.webdav.org/">WebDAV</a>) 機能</td></tr> 37<tr><th><a href="module-dict.html#Status">ステータス:</a></th><td>Extension</td></tr> 38<tr><th><a href="module-dict.html#ModuleIdentifier">モジュール識別子:</a></th><td>dav_module</td></tr> 39<tr><th><a href="module-dict.html#SourceFile">ソースファイル:</a></th><td>mod_dav.c</td></tr></table> 40<h3>概要</h3> 41 42 <p>このモジュールはクラス 1 とクラス 2 の 43 <a href="http://www.webdav.org">WebDAV</a> 44 ('ウェブベースの分散オーサリングとバージョン管理') 45 機能を Apache に提供します。 46 この HTTP プロトコルの拡張により、リモートのウェブサーバ上にある 47 リソースやコレクションを 48 作成、移動、複製、削除できるようになります。</p> 49</div> 50<div id="quickview"><h3 class="directives">ディレクティブ</h3> 51<ul id="toc"> 52<li><img alt="" src="/images/down.gif" /> <a href="#dav">Dav</a></li> 53<li><img alt="" src="/images/down.gif" /> <a href="#davdepthinfinity">DavDepthInfinity</a></li> 54<li><img alt="" src="/images/down.gif" /> <a href="#davmintimeout">DavMinTimeout</a></li> 55</ul> 56<h3>トピック</h3> 57<ul id="topics"> 58<li><img alt="" src="/images/down.gif" /> <a href="#example">Enabling WebDAV</a></li> 59<li><img alt="" src="/images/down.gif" /> <a href="#security">セキュリティの問題</a></li> 60<li><img alt="" src="/images/down.gif" /> <a href="#complex">複雑な設定</a></li> 61</ul><h3>参照</h3> 62<ul class="seealso"> 63<li><code class="directive"><a href="/mod/mod_dav_fs.html#davlockdb">DavLockDB</a></code></li> 64<li><code class="directive"><a href="/mod/core.html#limitxmlrequestbody">LimitXMLRequestBody</a></code></li> 65<li><a href="http://www.webdav.org">WebDAV Resources</a></li> 66</ul><ul class="seealso"><li><a href="#comments_section">コメント</a></li></ul></div> 67<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 68<div class="section"> 69<h2><a name="example" id="example">Enabling WebDAV</a></h2> 70 <p>mod_dav を有効にするには、<code>httpd.conf</code> 71 ファイル中のコンテナに次を加えます:</p> 72 73 <div class="example"><p><code>Dav On</code></p></div> 74 75 <p>これは DAV ファイルシステムプロバイダを有効にします。DAV 76 ファイルシステムプロバイダは <code class="module"><a href="/mod/mod_dav_fs.html">mod_dav_fs</a></code> 77 モジュールで実装されています。ですから、このモジュールはコンパイル時に 78 サーバに組み込まれているか、あるいは 79 <code class="directive"><a href="/mod/mod_so.html#loadmodule">LoadModule</a></code> 80 を使用して実行時にロードされている必要があります。</p> 81 82 <p>さらに、DAV ロックデータベースの場所が 83 <code class="directive"><a href="/mod/mod_dav_fs.html#davlockdb">DavLockDB</a></code> ディレクティブを使って 84 <code>httd.conf</code> ファイルのグローバルセクションに指定されている 85 必要があります。</p> 86 87 <div class="example"><p><code> 88 DavLockDB /usr/local/apache2/var/DavLock 89 </code></p></div> 90 91 <p>ロックデータベースファイルのあるディレクトリは Apache が実行されている 92 <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> 93 94 <p><code class="directive"><a href="/mod/core.html#limit"><Limit></a></code> 95 節を <code class="directive"><a href="/mod/core.html#location"><Location></a></code> 96 ディレクティブ内部に追加して、DAV が有効な場所への 97 アクセスを制限することもできます。DAV クライアントが 98 一度のリクエストで送信できる最大バイト数を指定したいときは、 99 <code class="directive"><a href="/mod/core.html#limitxmlrequestbody">LimitXMLRequestBody</a></code> 100 ディレクティブを使用する必要があります。「通常の」 101 <code class="directive"><a href="/mod/core.html#limitrequestbody">LimitRequestBody</a></code> 102 ディレクティブは DAV リクエストに対しては効力を持ちません。</p> 103 104 <div class="example"><h3>完全な例</h3><p><code> 105 DavLockDB /usr/local/apache2/var/DavLock<br /> 106 <br /> 107 <Location /foo><br /> 108 <span class="indent"> 109 Order Allow,Deny<br /> 110 Allow from all<br /> 111 Dav On<br /> 112 <br /> 113 AuthType Basic<br /> 114 AuthName DAV<br /> 115 AuthUserFile user.passwd<br /> 116 <br /> 117 <LimitExcept GET OPTIONS><br /> 118 <span class="indent"> 119 require user admin<br /> 120 </span> 121 </LimitExcept><br /> 122 </span> 123 </Location><br /> 124 </code></p></div> 125 126 <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> に 127 由来するものです。そのサイトからより多くの情報を手に入れることができます。</p> 128</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 129<div class="section"> 130<h2><a name="security" id="security">セキュリティの問題</a></h2> 131 132 <p>DAV のアクセスメソッドは遠隔クライアントがサーバのファイルを 133 操作することを可能にしますので、 <code class="module"><a href="/mod/mod_dav.html">mod_dav</a></code> を使用する 134 前に、サーバが安全であることを特に注意して確認しなければなりません。</p> 135 136 <p>サーバ上の DAV が使用可能になっている場所はすべて認証で保護してください。 137 HTTP 基本認証の使用は推奨できません。少なくとも 138 <code class="module"><a href="/mod/mod_auth_digest.html">mod_auth_digest</a></code> モジュールで提供される HTTP 139 ダイジェスト認証を用いるべきです。WebDAV クライアントのほとんどは 140 この認証方法に対応しています。代わりに、<a href="/ssl/">SSL</a> が 141 有効なコネクションを通した基本認証を使うこともできます。</p> 142 143 <p><code class="module"><a href="/mod/mod_dav.html">mod_dav</a></code> がファイルを操作できるようにするためには、 144 管理下のディレクトリとファイルとに 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> で書き込み可能である必要があります。 145 新しく作成されるファイルもこの <code class="directive"><a href="/mod/mpm_common.html#user">User</a></code> 146 と <code class="directive"><a href="/mod/mpm_common.html#group">Group</a></code> に所有される 147 ことになります。この理由から、そのアカウントへのアクセスを制御することは 148 重要です。DAV リポジトリは Apache 専用のものだとみなされています。 149 Apache 以外の方法でファイルを修正すること (例えば FTP やファイルシステム 150 用のツールなどを使って) は許可されていません。</p> 151 152 <p><code class="module"><a href="/mod/mod_dav.html">mod_dav</a></code> はいろいろな種類のサービス拒否攻撃にさらされる 153 かもしれません。<code class="directive"><a href="/mod/core.html#limitxmlrequestbody">LimitXMLRequestBody</a></code> ディレクティブを使うと 154 大きな DAV リクエストを解析するときに消費されるメモリの量を制限することが 155 できます。<code class="directive"><a href="#davdepthinfinity">DavDepthInfinity</a></code> ディレクティブは 156 <code>PROPFIND</code> リクエストが巨大リポジトリで大量のメモリを消費するのを 157 防ぐことができます。他のサービス拒否攻撃には単純に使用可能なディスク領域を 158 多くの大きなファイルで埋めてしまうんものがあります。これを直接防ぐ方法は 159 Apache にはありませんので、信用できないユーザに DAV アクセスを提供するのは 160 避けた方が良いでしょう。</p> 161</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 162<div class="section"> 163<h2><a name="complex" id="complex">複雑な設定</a></h2> 164 165 <p>よくある要求に、<code class="module"><a href="/mod/mod_dav.html">mod_dav</a></code> を使って動的なファイル 166 (PHP スクリプト、CGI スクリプトなど) を操作したいというものがあります。 167 これの実現は、<code>GET</code> リクエストはスクリプトの内容をダウンロードさせる 168 代わりに、スクリプトを常に実行させてしまうので難しくなっています。 169 これを回避する方法には、二つの違う URL を同じコンテンツにマップし、 170 一つはスクリプトを実行させ、もう一つはダウンロードさせたり、DAV から 171 操作されたりするように設定するというものがあります。</p> 172 173<div class="example"><p><code> 174Alias /phparea /home/gstein/php_files<br /> 175Alias /php-source /home/gstein/php_files<br /> 176<Location /php-source> 177<span class="indent"> 178 DAV On<br /> 179 ForceType text/plain<br /> 180</span> 181</Location> 182</code></p></div> 183 184 <p>この設定により、<code>http://example.com/phparea</code> を PHP スクリプトの 185 出力をアクセスするために使うことができ、 186 <code>http://example.com/php-source</code> を DAV クライアントによる 187 が操作のために使うことができます。</p> 188</div> 189<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 190<div class="directive-section"><h2><a name="Dav" id="Dav">Dav</a> <a name="dav" id="dav">ディレクティブ</a></h2> 191<table class="directive"> 192<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>WebDAV HTTP メソッドを有効にします</td></tr> 193<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Dav On|Off|<var>provider-name</var></code></td></tr> 194<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>Dav Off</code></td></tr> 195<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ</td></tr> 196<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Extension</td></tr> 197<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>mod_dav</td></tr> 198</table> 199 <p>与えられたコンテナで WebDAV HTTP メソッドが使えるようにするには 200 次のようにします。</p> 201 202 <div class="example"><p><code> 203 <Location /foo><br /> 204 <span class="indent"> 205 Dav On<br /> 206 </span> 207 </Location> 208 </code></p></div> 209 210 <p><code>On</code> という指定は実際には <code class="module"><a href="/mod/mod_dav_fs.html">mod_dav_fs</a></code> 211 で提供されているデフォルトのプロバイダ、<code>filesystem</code> 212 へのエイリアスになっています。一度あるロケーションで DAV 213 を有効にした後は、そのサブロケーションで<em>無効化することはできない</em> 214 ということに注意してください。完全な設定例は<a href="#example">上記のセクション</a> をご覧下さい。</p> 215 216 <div class="warning"> 217 サーバのセキュリティが確保できるまで WebDAV を有効にしないでください。 218 そうしなければ誰でもそのサーバでファイルを配布することができるように 219 なってしまいます。 220 </div> 221 222</div> 223<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 224<div class="directive-section"><h2><a name="DavDepthInfinity" id="DavDepthInfinity">DavDepthInfinity</a> <a name="davdepthinfinity" id="davdepthinfinity">ディレクティブ</a></h2> 225<table class="directive"> 226<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>PROPFIND, Depth: Infinity リクエストを許可します</td></tr> 227<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>DavDepthInfinity on|off</code></td></tr> 228<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>DavDepthInfinity off</code></td></tr> 229<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr> 230<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Extension</td></tr> 231<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>mod_dav</td></tr> 232</table> 233 <p>'Depth: Infinity' を含んでいる 234 <code>PROPFIND</code> リクエストを処理できるようにするには、 235 <code class="directive">DavDepthInfinity</code> 236 ディレクティブを使います。このタイプのリクエストは 237 denial-of-service アタックとなりうるので、 238 デフォルトでは許可されていません。</p> 239 240</div> 241<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 242<div class="directive-section"><h2><a name="DavMinTimeout" id="DavMinTimeout">DavMinTimeout</a> <a name="davmintimeout" id="davmintimeout">ディレクティブ</a></h2> 243<table class="directive"> 244<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバが DAV リソースのロックを維持する最小時間です。 245</td></tr> 246<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>DavMinTimeout <var>seconds</var></code></td></tr> 247<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>DavMinTimeout 0</code></td></tr> 248<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr> 249<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Extension</td></tr> 250<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>mod_dav</td></tr> 251</table> 252 <p>クライアントが DAV リソースロックを要求した場合、 253 ロックがサーバによって自動的に解除されるまでの時間を 254 同時に指定することができます。この値は単なるリクエストであって、 255 サーバはこれを無視することもできますし、 256 任意の値をクライアントに通知することもできます。</p> 257 258 <p>クライアントに戻すロックタイムアウトの最小時間を、 259 秒で、指定するために <code class="directive">DavMinTimeout</code> 260 ディレクティブを使います。 261 マイクロソフトのウェブフォルダのデフォルトでは 120 秒ですが; 262 ネットワークの遅延のせいでクライアントがロックを失うのを減らすために、 263 <code class="directive">DavMinTimeout</code> を使って 264 これをもっと大きな値 (例えば 600 秒) に上書きできます。</p> 265 266 <div class="example"><h3>例</h3><p><code> 267 <Location /MSWord><br /> 268 <span class="indent"> 269 DavMinTimeout 600<br /> 270 </span> 271 </Location> 272 </code></p></div> 273 274</div> 275</div> 276<div class="bottomlang"> 277<p><span>翻訳済み言語: </span><a href="/en/mod/mod_dav.html" hreflang="en" rel="alternate" title="English"> en </a> | 278<a href="/ja/mod/mod_dav.html" title="Japanese"> ja </a> | 279<a href="/ko/mod/mod_dav.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p> 280</div><div class="top"><a href="#page-header"><img src="/images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">コメント</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div> 281<script type="text/javascript"><!--//--><![CDATA[//><!-- 282var comments_shortname = 'httpd'; 283var comments_identifier = 'http://httpd.apache.org/docs/2.2/mod/mod_dav.html'; 284(function(w, d) { 285 if (w.location.hostname.toLowerCase() == "httpd.apache.org") { 286 d.write('<div id="comments_thread"><\/div>'); 287 var s = d.createElement('script'); 288 s.type = 'text/javascript'; 289 s.async = true; 290 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; 291 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); 292 } 293 else { 294 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); 295 } 296})(window, document); 297//--><!]]></script></div><div id="footer"> 298<p class="apache">Copyright 2013 The Apache Software Foundation.<br />この文書は <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> のライセンスで提供されています。.</p> 299<p class="menu"><a href="/mod/">モジュール</a> | <a href="/mod/directives.html">ディレクティブ</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">用語</a> | <a href="/sitemap.html">サイトマップ</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!-- 300if (typeof(prettyPrint) !== 'undefined') { 301 prettyPrint(); 302} 303//--><!]]></script> 304</body></html>