<?xml version="1.0" encoding="utf-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>mod_dav_svn Configuration Directives</title> <link rel="stylesheet" type="text/css" href="styles.css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.76.1" /> <link rel="home" href="index.html" title="Version Control with Subversion" /> <link rel="up" href="svn.ref.mod_dav_svn.html" title="mod_dav_svn—Subversion Apache HTTP Server Module" /> <link rel="prev" href="svn.ref.mod_dav_svn.html" title="mod_dav_svn—Subversion Apache HTTP Server Module" /> <link rel="next" href="svn.ref.mod_authz_svn.html" title="mod_authz_svn—Subversion Apache HTTP Authorization Module" /> </head> <body> <div class="navheader"> <table width="100%" summary="Navigation header"> <tr> <th colspan="3" align="center">mod_dav_svn Configuration Directives</th> </tr> <tr> <td width="20%" align="left"><a accesskey="p" href="svn.ref.mod_dav_svn.html">Prev</a> </td> <th width="60%" align="center">mod_dav_svn—Subversion Apache HTTP Server Module</th> <td width="20%" align="right"> <a accesskey="n" href="svn.ref.mod_authz_svn.html">Next</a></td> </tr> </table> <hr /> </div> <div class="refentry" title="mod_dav_svn Configuration Directives"> <a id="svn.ref.mod_dav_svn.conf"></a> <div class="titlepage"></div> <div class="refnamediv"> <h2>Name</h2> <p>mod_dav_svn Configuration Directives — Apache configuration directives for serving Subversion repositories through the Apache HTTP Server.</p> </div> <div class="refsect1" title="Description"> <a id="svn.ref.mod_dav_svn.conf.desc"></a> <h2>Description</h2> <p>This section briefly describes each Subversion Apache configuration directive. For an in-depth description of configuring Apache with Subversion, see <a class="xref" href="svn.serverconfig.httpd.html" title="httpd, the Apache HTTP Server">the section called “httpd, the Apache HTTP Server”</a>.</p> </div> <div class="refsect1" title="Directives"> <a id="svn.ref.mod_dav_svn.conf.directives"></a> <h2>Directives</h2> <p>These are the <code class="filename">httpd.conf</code> directives that apply to <span class="command"><strong>mod_dav_svn</strong></span>:</p> <div class="variablelist"> <dl> <dt> <span class="term"> <code class="literal">DAV svn</code> </span> </dt> <dd> <p>Must be included in any <code class="literal">Directory</code> or <code class="literal">Location</code> block for a Subversion repository. It tells <span class="command"><strong>httpd</strong></span> to use the Subversion backend for <code class="literal">mod_dav</code> to handle all requests.</p> </dd> <dt> <span class="term"> <code class="literal">SVNActivitiesDB <em class="replaceable"><code>directory-path</code></em></code> </span> </dt> <dd> <p>Specifies the location in the filesystem where the activities database should be stored. By default, <span class="command"><strong>mod_dav_svn</strong></span> creates and uses a directory in the repository called <code class="filename">dav/activities.d</code>. The path specified with this option must be an absolute path.</p> <p>If specified for an <code class="literal">SVNParentPath</code> area, <span class="command"><strong>mod_dav_svn</strong></span> appends the basename of the repository to the path specified here. For example:</p> <div class="informalexample"> <pre class="screen"> <Location /svn> DAV svn # any "/svn/foo" URL will map to a repository in # /net/svn.nfs/repositories/foo SVNParentPath "/net/svn.nfs/repositories" # any "/svn/foo" URL will map to an activities db in # /var/db/svn/activities/foo SVNActivitiesDB "/var/db/svn/activities" </Location> </pre> </div> </dd> <dt> <span class="term"> <code class="literal">SVNAdvertiseV2Protocol On|Off</code> </span> </dt> <dd> <p>New to Subversion 1.7, this toggles whether <span class="command"><strong>mod_dav_svn</strong></span> advertises its support for the new version of its HTTP protocol also introduced in that version. Most admins will not wish to use this directive (which is <code class="literal">On</code> by default), choosing instead to enjoy the performance benefits that the new protocol offers. However, whena configuring a server as a write-through proxy to another server which does not support the new protocol, set this directive's value to <code class="literal">Off</code>.</p> </dd> <dt> <span class="term"> <code class="literal">SVNAllowBulkUpdates On|Off</code> </span> </dt> <dd> <p>Toggles support for all-inclusive responses to update-style <code class="literal">REPORT</code> requests. Subversion clients use <code class="literal">REPORT</code> requests to get information about directory tree checkouts and updates from <span class="command"><strong>mod_dav_svn</strong></span>. They can ask the server to send that information in one of two ways: with the entirety of the tree's information in one massive response, or with a <em class="firstterm">skelta</em> (a skeletal representation of a tree delta) which contains just enough information for the client to know what <span class="emphasis"><em>additional</em></span> data to request from the server. When this directive is included with a value of <code class="literal">Off</code>, <span class="command"><strong>mod_dav_svn</strong></span> will only ever respond to these <code class="literal">REPORT</code> requests with skelta responses, regardless of the type of responses requested by the client.</p> <p>Most folks won't need to use this directive at all. It primarily exists for administrators who wish—for security or auditing reasons—to force Subversion clients to fetch individually all the files and directories needed for updates and checkouts, thus leaving an audit trail of <code class="literal">GET</code> and <code class="literal">PROPFIND</code> requests in Apache's logs. The default value of this directive is <code class="literal">On</code>.</p> </dd> <dt> <span class="term"> <code class="literal">SVNAutoversioning On|Off</code> </span> </dt> <dd> <p>When its value is <code class="literal">On</code>, allows write requests from WebDAV clients to result in automatic commits. A generic log message is auto-generated and attached to each revision. If you enable autoversioning, you'll likely want to set <code class="literal">ModMimeUsePathInfo On</code> so that <code class="literal">mod_mime</code> can set <code class="literal">svn:mime-type</code> to the correct MIME type automatically (as best as <code class="literal">mod_mime</code> is able to, of course). For more information, see <a class="xref" href="svn.webdav.html" title="Appendix C. WebDAV and Autoversioning">Appendix C, <em>WebDAV and Autoversioning</em></a>. The default value of this directive is <code class="literal">Off</code>.</p> </dd> <dt> <span class="term"> <code class="literal">SVNCacheFullTexts On|Off</code> </span> </dt> <dd> <p>When set to <code class="literal">On</code>, this tells Subversion to cache content fulltexts if sufficient in-memory cache is available, which could offer a significant performance benefit to the server. (See also the <code class="literal">SVNInMemoryCacheSize</code> directive.) The default value of this directive is <code class="literal">Off</code>.</p> </dd> <dt> <span class="term"> <code class="literal">SVNCacheTextDeltas On|Off</code> </span> </dt> <dd> <p>When set to <code class="literal">On</code>, this tells Subversion to cache content deltas if sufficient in-memory cache is available, which could offer a significant performance benefit to the server. (See also the <code class="literal">SVNInMemoryCacheSize</code> directive.) The default value of this directive is <code class="literal">Off</code>.</p> </dd> <dt> <span class="term"> <code class="literal">SVNCompressionLevel <em class="replaceable"><code>level</code></em></code> </span> </dt> <dd> <p>Specifies the compression level used when sending file content over the network. A value of <code class="literal">0</code> disables compression altogether, and <code class="literal">9</code> is the maximum value. <code class="literal">5</code> is the default value.</p> </dd> <dt> <span class="term"> <code class="literal">SVNIndexXSLT <em class="replaceable"><code>directory-path</code></em></code> </span> </dt> <dd> <p>Specifies the URI of an XSL transformation for directory indexes. This directive is optional.</p> </dd> <dt> <span class="term"> <code class="literal">SVNInMemoryCacheSize <em class="replaceable"><code>size</code></em></code> </span> </dt> <dd> <p>Specifies the maximum size (in kbytes) per process of Subversion's in-memory object cache. The default value is <code class="literal">16384</code>; use a value of <code class="literal">0</code> to deactivate this cache altogether.</p> </dd> <dt> <span class="term"> <code class="literal">SVNListParentPath On|Off</code> </span> </dt> <dd> <p>When set to <code class="literal">On</code>, allows a <code class="literal">GET</code> of <code class="literal">SVNParentPath</code>, which results in a listing of all repositories under that path. The default setting is <code class="literal">Off</code>.</p> </dd> <dt> <span class="term"> <code class="literal">SVNMasterURI <em class="replaceable"><code>url</code></em></code> </span> </dt> <dd> <p>Specifies a URI to the master Subversion repository (used for a write-through proxy).</p> </dd> <dt> <span class="term"> <code class="literal">SVNParentPath <em class="replaceable"><code>directory-path</code></em></code> </span> </dt> <dd> <p>Specifies the location in the filesystem of a parent directory whose child directories are Subversion repositories. In a configuration block for a Subversion repository, either this directive or <code class="literal">SVNPath</code> must be present, but not both.</p> </dd> <dt> <span class="term"> <code class="literal">SVNPath <em class="replaceable"><code>directory-path</code></em></code> </span> </dt> <dd> <p>Specifies the location in the filesystem for a Subversion repository's files. In a configuration block for a Subversion repository, either this directive or <code class="literal">SVNParentPath</code> must be present, but not both.</p> </dd> <dt> <span class="term"> <code class="literal">SVNPathAuthz On|Off|short_circuit</code> </span> </dt> <dd> <p>Controls path-based authorization by enabling subrequests (<code class="literal">On</code>), disabling subrequests (<code class="literal">Off</code>; see <a class="xref" href="svn.serverconfig.httpd.html#svn.serverconfig.httpd.authz.pathauthzoff" title="Disabling path-based checks">the section called “Disabling path-based checks”</a>), or querying <span class="command"><strong>mod_authz_svn</strong></span> directly (<code class="literal">short_circuit</code>). The default value of this directive is <code class="literal">On</code>.</p> </dd> <dt> <span class="term"> <code class="literal">SVNReposName <em class="replaceable"><code>name</code></em></code> </span> </dt> <dd> <p>Specifies the name of a Subversion repository for use in <code class="literal">HTTP GET</code> responses. This value will be prepended to the title of all directory listings (which are served when you navigate to a Subversion repository with a web browser). This directive is optional.</p> </dd> <dt> <span class="term"> <code class="literal">SVNSpecialURI <em class="replaceable"><code>component</code></em></code> </span> </dt> <dd> <p>Specifies the URI component (namespace) for special Subversion resources. The default is <code class="literal">!svn</code>, and most administrators will never use this directive. Set this only if there is a pressing need to have a file named <code class="filename">!svn</code> in your repository. If you change this on a server already in use, it will break all of the outstanding working copies, and your users will hunt you down with pitchforks and flaming torches.</p> </dd> </dl> </div> </div> </div> <div class="navfooter"> <hr /> <table width="100%" summary="Navigation footer"> <tr> <td width="40%" align="left"><a accesskey="p" href="svn.ref.mod_dav_svn.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="svn.ref.mod_dav_svn.html">Up</a> </td> <td width="40%" align="right"> <a accesskey="n" href="svn.ref.mod_authz_svn.html">Next</a></td> </tr> <tr> <td width="40%" align="left" valign="top">mod_dav_svn—Subversion Apache HTTP Server Module </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> <td width="40%" align="right" valign="top"> mod_authz_svn—Subversion Apache HTTP Authorization Module</td> </tr> </table> </div> <div xmlns="" id="svn-footer"> <hr /> <p>You are reading <em>Version Control with Subversion</em> (for Subversion 1.7), by Ben Collins-Sussman, Brian W. Fitzpatrick, and C. Michael Pilato.<br /> This work is licensed under the <a href="http://creativecommons.org/licenses/by/2.0/">Creative Commons Attribution License v2.0</a>.<br /> To submit comments, corrections, or other contributions to the text, please visit <a href="http://www.svnbook.com/">http://www.svnbook.com/</a>.</p> </div> </body> </html>