1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_dav - Serveur Apache HTTP Version 2.5</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<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" />
<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
<p class="apache">Serveur Apache HTTP Version 2.5</p>
<img alt="" src="../images/feather.gif" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.5</a> > <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_dav</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_dav.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_dav.html" title="Fran�ais"> fr </a> |
<a href="../ja/mod/mod_dav.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="../ko/mod/mod_dav.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Fonctionnalit� de cr�ation et gestion de versions de
documents via le web (<a href="http://www.webdav.org/">WebDAV</a>)</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur�de�Module:</a></th><td>dav_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">Fichier�Source:</a></th><td>mod_dav.c</td></tr></table>
<h3>Sommaire</h3>
<p>Ce module ajoute � Apache une fonctionnalit� <a href="http://www.webdav.org">WebDAV</a> de classes 1 et 2
('Web-based Distributed Authoring and Versioning' ou Cr�ation et
gestion de versions de documents via le web). Il s'agit d'une
extension du protocole HTTP qui permet de cr�er, d�placer, copier et
supprimer des ressources ou collections de ressources sur un serveur
web distant.</p>
</div>
<div id="quickview"><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#dav">Dav</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#davdepthinfinity">DavDepthInfinity</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#davmintimeout">DavMinTimeout</a></li>
</ul>
<h3>Sujets</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#example">Activation de WebDAV</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#security">Probl�mes concernant la s�curit�</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#complex">Configurations complexes</a></li>
</ul><h3>Voir aussi</h3>
<ul class="seealso">
<li><code class="directive"><a href="../mod/mod_dav_fs.html#davlockdb">DavLockDB</a></code></li>
<li><code class="directive"><a href="../mod/core.html#limitxmlrequestbody">LimitXMLRequestBody</a></code></li>
<li><a href="http://www.webdav.org">Ressources WebDAV</a></li>
</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="example" id="example">Activation de WebDAV</a></h2>
<p>Pour activer le module <code class="module"><a href="../mod/mod_dav.html">mod_dav</a></code>, ajoutez la ligne
suivante � un conteneur de votre fichier <code>httpd.conf</code>
:</p>
<pre class="prettyprint lang-config">Dav On</pre>
<p>Ceci active le fournisseur de syst�me de fichier DAV impl�ment� par
le module <code class="module"><a href="../mod/mod_dav_fs.html">mod_dav_fs</a></code>. Ce dernier doit donc �tre
compil� dans le serveur ou charg� au d�marrage � l'aide de la
directive <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code>.</p>
<p>En outre, vous devez indiquer o� se trouve la base de donn�es des
verrous DAV via une directive <code class="directive"><a href="../mod/mod_dav_fs.html#davlockdb">DavLockDB</a></code> dans la section globale de
votre fichier <code>httpd.conf</code> :</p>
<pre class="prettyprint lang-config">DavLockDB /usr/local/apache2/var/DavLock</pre>
<p>Le r�pertoire contenant le fichier de la base de donn�es des
verrous doit avoir des droits en �criture pour l'utilisateur et le
groupe sous lesquels Apache s'ex�cute et d�finis respectivement par
les directives <code class="directive"><a href="../mod/mod_unixd.html#user">User</a></code> et
<code class="directive"><a href="../mod/mod_unixd.html#group">Group</a></code>.</p>
<p>Si vous souhaitez limiter l'acc�s aux r�pertoires o� DAV est
activ�, vous pouvez ajouter une clause <code class="directive"><a href="../mod/core.html#limit"><Limit></a></code> dans la section <code class="directive"><a href="../mod/core.html#location"><Location></a></code> consid�r�e. Pour
d�finir la quantit� maximale de donn�es en octets qu'un client
DAV peut envoyer par requ�te, vous devez utiliser la directive
<code class="directive"><a href="../mod/core.html#limitxmlrequestbody">LimitXMLRequestBody</a></code>, car La
directive <code class="directive"><a href="../mod/core.html#limitrequestbody">LimitRequestBody</a></code>
"habituelle" n'a aucune incidence sur les requ�tes DAV.</p>
<div class="example"><h3>Exemple complet</h3><pre class="prettyprint lang-config">DavLockDB /usr/local/apache2/var/DavLock
<Directory /usr/local/apache2/htdocs/foo>
Require all granted
Dav On
AuthType Basic
AuthName DAV
AuthUserFile user.passwd
<LimitExcept GET POST OPTIONS>
Require user admin
</LimitExcept>
</Directory></pre>
</div>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="security" id="security">Probl�mes concernant la s�curit�</a></h2>
<p>Etant donn� que les m�thodes d'acc�s DAV permettent � des clients
distants de manipuler des fichiers sur le serveur, vous devez vous
assurer que votre serveur est bien s�curis� avant d'activer
<code class="module"><a href="../mod/mod_dav.html">mod_dav</a></code>.</p>
<p>Tout r�pertoire du serveur o� DAV est activ� doit �tre prot�g�
par une proc�dure d'authentification. L'utilisation de
l'authentification HTTP de base n'est pas recommand�e. Vous devez
utiliser au moins l'authentification HTTP � base de condens�s
qu'impl�mente le module <code class="module"><a href="../mod/mod_auth_digest.html">mod_auth_digest</a></code>.
Pratiquement tous les clients WebDAV supportent cette m�thode
d'authentification. Vous pouvez aussi utiliser l'authentification de
base sur une connexion o� <a href="../ssl/">SSL</a> est activ�.</p>
<p>Pour que <code class="module"><a href="../mod/mod_dav.html">mod_dav</a></code> puisse manipuler des fichiers,
il doit avoir des permissions en �criture sur les r�pertoires et les
fichiers qui sont sous son contr�le ; en d'autre termes, c'est
l'utilisateur et le groupe sous lesquels Apache s'ex�cute et d�finis
par les directives <code class="directive"><a href="../mod/mod_unixd.html#user">User</a></code> et
<code class="directive"><a href="../mod/mod_unixd.html#group">Group</a></code> qui doivent avoir
les droits en �criture sur ces fichiers et r�pertoires. Les fichiers
nouvellement cr��s appartiendront aussi � ces utilisateur et groupe.
Par cons�quent, il est important de contr�ler l'acc�s � ce compte.
Les r�pertoires DAV sont consid�r�s comme priv�s du point de vue
d'Apache, et la modification des fichiers qu'ils contiennent
autrement que par l'interm�diaire d'Apache (par exemple par FTP ou
par des outils du niveau du syst�me de fichiers) ne doit pas �tre
permise.</p>
<p><code class="module"><a href="../mod/mod_dav.html">mod_dav</a></code> peut faire l'objet de plusieurs sortes
d'attaques par d�ni de service. La directive <code class="directive"><a href="../mod/core.html#limitxmlrequestbody">LimitXMLRequestBody</a></code> permet de limiter la
quantit� de m�moire consomm�e pour interpr�ter des requ�tes DAV de
grande taille. En outre, la directive <code class="directive"><a href="#davdepthinfinity">DavDepthInfinity</a></code> permet d'emp�cher les
requ�tes <code>PROPFIND</code> concernant un r�pertoire de tr�s
grande taille de consommer de grandes quantit�s de m�moire. Un autre
type d'attaque par d�ni de service peut aussi �tre men� par un
client qui remplit simplement tout l'espace disque disponible avec
des fichiers de tr�s grande taille. Etant donn� qu'il n'existe aucun
moyen direct d'�viter ce genre d'attaque dans Apache, vous ne devez
accorder des acc�s DAV qu'� des utilisateurs de confiance.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="complex" id="complex">Configurations complexes</a></h2>
<p>Les requ�tes ayant pour but de manipuler des fichiers dynamiques
(scripts PHP, scripts CGI, etc...) en utilisant
<code class="module"><a href="../mod/mod_dav.html">mod_dav</a></code> sont courantes. Ce traitement n'est pas
�vident car une requ�te
<code>GET</code> va toujours tenter d'ex�cuter le script, plut�t que
de t�l�charger son contenu. Pour �viter cet inconv�nient, une
m�thode possible consiste � faire correspondre deux URLs
diff�rentes au m�me contenu, l'une d'entre elles servant � lancer le
script, alors que l'autre peut �tre utilis�e pour le t�l�charger et
le manipuler avec DAV.</p>
<pre class="prettyprint lang-config">Alias /phparea /home/gstein/php_files
Alias /php-source /home/gstein/php_files
<Location /php-source>
Dav On
ForceType text/plain
</Location></pre>
<p>Avec cette configuration, on peut utiliser
<code>http://example.com/phparea</code> pour afficher le r�sultat de
l'ex�cution des scripts PHP, et
<code>http://example.com/php-source</code> pour les manipuler avec
DAV.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Dav" id="Dav">Dav</a> <a name="dav" id="dav">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active les m�thodes HTTP WebDAV</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Dav On|Off|<var>nom fournisseur</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>Dav Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_dav</td></tr>
</table>
<p>La directive <code class="directive">Dav</code> active les
m�thodes HTTP WebDAV pour le conteneur condid�r� :</p>
<pre class="prettyprint lang-config"><Location /foo>
Dav On
</Location></pre>
<p>La valeur <code>On</code> est en fait un alias vers le
fournisseur par d�faut <code>filesystem</code> impl�ment� par le
module <code class="module"><a href="../mod/mod_dav_fs.html">mod_dav_fs</a></code>. Notez que lorsque DAV est activ�
pour un conteneur, on <em>ne peut pas</em> le d�sactiver pour ses
sous-conteneurs. Pour un exemple de configuration complet,
reportez-vous � la <a href="#example">section pr�c�dente</a>.</p>
<div class="warning">
N'activez pas WebDAV tant que votre serveur n'est pas s�curis�. Si
vous passez outre cette recommandation, tout le monde pourra
enregistrer des fichiers sur votre syst�me.
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="DavDepthInfinity" id="DavDepthInfinity">DavDepthInfinity</a> <a name="davdepthinfinity" id="davdepthinfinity">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Autorise les requ�tes PROPFIND avec en-t�te Depth:
Infinity</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>DavDepthInfinity on|off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>DavDepthInfinity off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_dav</td></tr>
</table>
<p>La directive <code class="directive">DavDepthInfinity</code>
autorise le traitement des requ�tes <code>PROPFIND</code>
contenant l'en-t�te Depth: Infinity. Par d�faut, ce type de requ�te
n'est pas autoris�, car il peut favoriser les attaques de type D�ni
de service.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="DavMinTimeout" id="DavMinTimeout">DavMinTimeout</a> <a name="davmintimeout" id="davmintimeout">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Dur�e minimale pendant laquelle le serveur maintient un
verrou sur une ressource DAV</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>DavMinTimeout <var>secondes</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>DavMinTimeout 0</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_dav</td></tr>
</table>
<p>Lorsqu'un client demande le verrouillage d'une ressource DAV, il
peut aussi sp�cifier une dur�e au bout de laquelle le verrou sera
automatiquement supprim� par le serveur. Cette valeur ne constitue
qu'une requ�te, et le serveur peut l'ignorer ou informer le client
qu'il va utiliser une valeur arbitraire.</p>
<p>La directive <code class="directive">DavMinTimeout</code>
sp�cifie, en secondes, la dur�e minimale de verrouillage � renvoyer
au client. Les R�pertoires Web de Microsoft pr�sentent une dur�e par
d�faut de 120 secondes ; la directive
<code class="directive">DavMinTimeout</code> permet de d�finir une valeur
sup�rieure (par exemple 600 secondes), afin de r�duire les risques
de perte du verrou par le client suite � une surcharge du
r�seau.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"><Location /MSWord>
DavMinTimeout 600
</Location></pre>
</div>
</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_dav.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_dav.html" title="Fran�ais"> fr </a> |
<a href="../ja/mod/mod_dav.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="../ko/mod/mod_dav.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
</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">Commentaires</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>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_dav.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2014 The Apache Software Foundation.<br />Autoris� sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>
|