mod_dav.html revision 2eaf662cbc81e823e8d9aeb8d54e69e63032493e
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync<html xmlns="http://www.w3.org/1999/xhtml">
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <head>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <meta name="generator" content="HTML Tidy, see www.w3.org" />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <title>Apache module mod_dav</title>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </head>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <!-- Background white, links blue (unvisited), navy (visited), red (active) -->
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <body bgcolor="#FFFFFF" text="#000000" link="#0000FF"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync vlink="#000080" alink="#FF0000">
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <!--#include virtual="header.html" -->
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <h1 align="CENTER">Module mod_dav</h1>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <p>This module provides Distributed Authoring and Versioning
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync (<a href="http://www.webdav.org/">WebDAV</a>)
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync functionality.</p>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="module-dict.html#Status"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Status:</strong></a> Extension <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="module-dict.html#SourceFile"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Source File:</strong></a> mod_dav.c <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="module-dict.html#ModuleIdentifier"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Module Identifier:</strong></a> dav_module
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <h2>Summary</h2>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <p>This module provides class 1 and class 2 <a
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync href="http://www.webdav.org">WebDAV</a> ('Web-based Distributed
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync Authoring and Versioning') functionality for Apache. This
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync extension to the HTTP protocol allows creating, moving,
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync copying, and deleting resources and collections on a remote web
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync server.</p>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <p>To enable mod_dav, add the following to a container in your
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <code>httpd.conf</code> file:</p>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <blockquote>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <code>Dav On</code>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </blockquote>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <p>Also, specify a valid filename for the DAV lock database by
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync adding the following to the global section in your
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <code>httpd.conf</code> file:</p>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <blockquote>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <code>DavLockDB /tmp/DavLock&nbsp;&nbsp;&nbsp;&nbsp;</code>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <em>(Any web-server writable filename, without an
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync extension)</em>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </blockquote>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <h2>Directives</h2>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <ul>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <li><a href="#DAV">Dav</a></li>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <li><a href="#DAVLockDB">DavLockDB</a></li>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <li><a href="#DAVMinTimeout">DavMinTimeout</a></li>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <li><a href="#DAVDepthInfinity">DavDepthInfinity</a></li>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </ul>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <hr />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <h2><a id="DAV" name="DAV">Dav</a></h2>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Syntax"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Syntax:</strong></a> Dav on|off<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Default"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Default:</strong></a> <code>Dav
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync off</code><br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Context"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Context:</strong></a> directory<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Status"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Status:</strong></a> extension<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Module"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Module:</strong></a> mod_dav<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Compatibility"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Compatibility:</strong></a> Apache 1.3.4 and
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync above
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <p>Use the <code>Dav</code> directive to enable the WebDAV HTTP
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync methods for the given container. You may wish to add a <a
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync href="core.html#limit">&lt;Limit&gt;</a> clause inside the <a
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync href="core.html#location">location</a> directive to limit
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync access to DAV-enabled locations.</p>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <table width="70%" border="0" bgcolor="#E0E0F0" cellspacing="0"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync cellpadding="10">
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <tr>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <td><strong>Example</strong>:<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <code>DavLockDB /tmp/DavLock<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync &lt;Location /foo&gt;<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync Dav On<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync AuthType Basic<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync AuthName DAV<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync AuthUserFile user.passwd<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync &nbsp;&nbsp;&lt;LimitExcept GET HEAD OPTIONS&gt;<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync &nbsp;&nbsp;require user admin<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync &nbsp;&nbsp;&lt;/LimitExcept&gt;<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync &lt;/Location&gt;<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </code> </td>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </tr>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </table>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <hr />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <h2><a id="DavLockDB" name="DavLockDB">DavLockDB</a></h2>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Syntax"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Syntax:</strong></a> DavLockDB
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <em>filename</em><br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Default"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Default:</strong></a> <em>None</em><br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Context"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Context:</strong></a> server config, virtual
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync host<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Status"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Status:</strong></a> extension<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Module"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Module:</strong></a> mod_dav
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <p>Use the <code>DavLockDB</code> directive to specify the full
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync path to the lock database, excluding an extension. The default
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync (file system) implementation of mod_dav uses a SDBM database to
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync track user locks. The utility
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <code>modules/dav/util/lockview</code> can be used from the
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync server to display all locks in a lock database.</p>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <table width="70%" border="0" bgcolor="#E0E0F0" cellspacing="0"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync cellpadding="10">
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <tr>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <td><strong>Example</strong>:<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <code>DavLockDB /tmp/DavLock<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </code> </td>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </tr>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </table>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <hr />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <h2><a id="DavMinTimeout"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync name="DavMinTimeout">DavMinTimeout</a></h2>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Syntax"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Syntax:</strong></a> DavMinTimeout
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <em>seconds</em><br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Default"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Default:</strong></a> <code>DavMinTimeout
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync 0</code><br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Context"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Context:</strong></a> directory<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Status"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Status:</strong></a> extension<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Module"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Module:</strong></a> mod_dav
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <p>When a client requests a DAV resource lock, it can also
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync specify a time when the lock will be automatically removed by
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync the server. This value is only a request, and the server can
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync ignore it or inform the client of an arbitrary value.</p>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <p>Use the <code>DavMinTimeout</code> directive to specify, in
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync seconds, the minimum lock timeout to return to a client.
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync Microsoft Web Folders defaults to a timeout of 120 seconds; the
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <code>DavMinTimeout</code> can override this to a higher value
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync (like 600 seconds) to reduce the chance of the client losing
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync the lock due to network latency.</p>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <table width="70%" border="0" bgcolor="#E0E0F0" cellspacing="0"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync cellpadding="10">
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <tr>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <td><strong>Example</strong>:<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <code>&lt;Location /MSWord&gt;<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync DavMinTimeout 600<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync &lt;/Location&gt;<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </code> </td>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </tr>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </table>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <hr />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <h2><a id="DavDepthInfinity"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync name="DavDepthInfinity">DavDepthInfinity</a></h2>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Syntax"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Syntax:</strong></a> DavDepthInfinity
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync on|off<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Default"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Default:</strong></a> <code>DavDepthInfinity
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync off</code><br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Context"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Context:</strong></a> directory<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Status"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Status:</strong></a> extension<br />
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <a href="directive-dict.html#Module"
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync rel="Help"><strong>Module:</strong></a> mod_dav
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <p>Use the <code>DavDepthInfinity</code> directive to allow the
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync processing of PROPFIND requests containing the header 'Depth:
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync Infinity'. Because this type of request could constitute a
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync denial-of-service attack, by default it is not allowed.</p>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync <!--#include virtual="footer.html" -->
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync </body>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync</html>
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync
12f23f71a23b2fc1bb8100885672f5310fa1989bvboxsync