]> granicus.if.org Git - apache/blob - docs/manual/mod/mod_dir.xml.fr
Updates.
[apache] / docs / manual / mod / mod_dir.xml.fr
1 <?xml version="1.0"?>
2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
4 <!-- English Revision : 1326758-->
5 <!-- French translation : Lucien GENTIS -->
6 <!-- Reviewed by : Vincent Deffontaines -->
7
8 <!--
9  Licensed to the Apache Software Foundation (ASF) under one or more
10  contributor license agreements.  See the NOTICE file distributed with
11  this work for additional information regarding copyright ownership.
12  The ASF licenses this file to You under the Apache License, Version 2.0
13  (the "License"); you may not use this file except in compliance with
14  the License.  You may obtain a copy of the License at
15
16      http://www.apache.org/licenses/LICENSE-2.0
17
18  Unless required by applicable law or agreed to in writing, software
19  distributed under the License is distributed on an "AS IS" BASIS,
20  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21  See the License for the specific language governing permissions and
22  limitations under the License.
23 -->
24
25 <modulesynopsis metafile="mod_dir.xml.meta">
26 <name>mod_dir</name>
27 <description>Permet la redirection des adresses se terminant par un
28 r&eacute;pertoire sans slash de fin et la mise &agrave; disposition des fichiers index
29 de r&eacute;pertoire</description>
30 <status>Base</status>
31 <sourcefile>mod_dir.c</sourcefile>
32 <identifier>dir_module</identifier>
33
34 <summary>
35     <p>L'index d'un r&eacute;pertoire peut provenir de deux sources :</p>
36
37     <ul>
38       <li>Un fichier &eacute;crit par l'utilisateur, dont le nom, en g&eacute;n&eacute;ral
39       appel&eacute; <code>index.html</code>, peut &ecirc;tre d&eacute;fini &agrave; l'aide de la
40       directive <directive module="mod_dir">DirectoryIndex</directive>
41       fournie par le module <module>mod_dir</module>.</li>
42
43       <li>Un listing g&eacute;n&eacute;r&eacute; par le serveur, par l'interm&eacute;diaire du
44       module <module>mod_autoindex</module>.</li>
45     </ul>
46     <p>Les deux fonctions sont bien distinctes, si bien que vous pouvez
47     supprimer (ou remplacer) la g&eacute;n&eacute;ration automatique d'index, si vous
48     le souhaitez.</p>
49
50     <p>Une redirection "slash de fin" est effectu&eacute;e lorsque le serveur
51     re&ccedil;oit une requ&ecirc;te pour une URL du style
52     <code>http://nom-serveur/foo/nom-rep</code> o&ugrave; <code>nom-rep</code>
53     est le nom d'un r&eacute;pertoire. Comme les r&eacute;pertoires n&eacute;cessitent un slash de
54     fin, <module>mod_dir</module> effectue une redirection vers
55     <code>http://nom-serveur/foo/nom-rep/</code>.</p>
56 </summary>
57
58 <directivesynopsis>
59 <name>DirectoryIndex</name>
60 <description>Liste des fichiers ressources &agrave; rechercher lorsque le
61 client envoie une requ&ecirc;te pour un r&eacute;pertoire</description>
62 <syntax>DirectoryIndex
63     disabled | <var>url locale</var> [<var>url locale</var>] ...</syntax>
64 <default>DirectoryIndex index.html</default>
65 <contextlist><context>server config</context><context>virtual host</context>
66 <context>directory</context><context>.htaccess</context></contextlist>
67 <override>Indexes</override>
68
69 <usage>
70     <p>La directive <directive>DirectoryIndex</directive> permet de
71     d&eacute;finir une liste de fichiers ressources &agrave; rechercher lorsqu'un
72     client envoie une requ&ecirc;te pour l'index d'un r&eacute;pertoire, en ajoutant
73     un '/' &agrave; la fin du nom de ce dernier. <var>url locale</var> est
74     l'URL (cod&eacute;e avec caract&egrave;res '%') d'un document du serveur, relative
75     au r&eacute;pertoire faisant l'objet de la requ&ecirc;te ; il s'agit en g&eacute;n&eacute;ral
76     du nom d'un fichier situ&eacute; dans le r&eacute;pertoire. Si plusieurs URLs sont
77     fournies, le serveur renverra la premi&egrave;re d'entre elles qui
78     correspond &agrave; une ressource existante. Si aucune ressource ne
79     correspond &agrave; la liste des URLs sp&eacute;cifi&eacute;es, et si l'option
80     <code>Indexes</code> est d&eacute;finie, le serveur g&eacute;n&eacute;rera son propre
81     listing du r&eacute;pertoire.</p>
82
83     <example><title>Exemple</title>
84       DirectoryIndex index.html
85     </example>
86
87     <p>Avec cette configuration, une requ&ecirc;te pour l'URL
88     <code>http://example.com/docs/</code> renverrait au client la
89     ressource <code>http://example.com/docs/index.html</code> si elle
90     existe, ou provoquerait la g&eacute;n&eacute;ration du listing du r&eacute;pertoire si la
91     ressource n'existe pas.</p>
92
93     <p>Notez qu'il n'est pas n&eacute;cessaire que les documents soient
94     relatifs au r&eacute;pertoire ;</p>
95
96     <example>
97       DirectoryIndex index.html index.txt  /cgi-bin/index.pl
98     </example>
99
100     <p>provoquerait l'ex&eacute;cution du script CGI
101     <code>/cgi-bin/index.pl</code> si aucun des fichiers
102     <code>index.html</code> ou <code>index.txt</code> n'existe dans le
103     r&eacute;pertoire consid&eacute;r&eacute;.</p>
104
105     <p>La sp&eacute;cification du seul argument "disabled" emp&ecirc;che
106     <module>mod_dir</module> de rechercher un index. Un argument
107     "disabled" sera interpr&eacute;t&eacute; de mani&egrave;re litt&eacute;rale si d'autres
108     arguments sont pr&eacute;sents avant ou apr&egrave;s lui, m&ecirc;me s'ils sont
109     eux-m&ecirc;mes des arguments "disabled".</p>
110
111 </usage>
112 </directivesynopsis>
113
114 <directivesynopsis>
115 <name>DirectoryIndexRedirect</name>
116 <description>D&eacute;finit une redirection externe pour les index de
117 r&eacute;pertoires.
118 </description>
119 <syntax>DirectoryIndexRedirect on | off | permanent | temp | seeother |
120 <var>3xx-code</var>
121 </syntax>
122 <default>DirectoryIndexRedirect off</default>
123 <contextlist><context>server config</context><context>virtual host</context>
124 <context>directory</context><context>.htaccess</context></contextlist>
125 <override>Indexes</override>
126 <compatibility>Disponible depuis la version 2.3.14</compatibility>
127
128 <usage>
129     <p>Par d&eacute;faut, c'est la page d&eacute;finie par la directive
130     <directive>DirectoryIndex</directive> qui est s&eacute;lectionn&eacute;e et
131     renvoy&eacute;e de mani&egrave;re transparente au client. La directive
132     <directive>DirectoryIndexRedirect</directive> permet de rediriger le
133     client vers une ressource externe.</p>
134
135     <example><title>Exemple</title>
136       DirectoryIndexRedirect on
137     </example>
138
139     <p>Une requ&ecirc;te pour <code>http://example.com/docs/</code> se
140     solderait par une redirection temporaire vers
141     <code>http://example.com/docs/index.html</code> si cette ressource
142     existe.</p>
143
144 </usage>
145 </directivesynopsis>
146
147 <directivesynopsis>
148 <name>DirectorySlash</name>
149 <description>Activation/D&eacute;sactivation de la redirection "slash de
150 fin"</description>
151 <syntax>DirectorySlash On|Off</syntax>
152 <default>DirectorySlash On</default>
153 <contextlist><context>server config</context><context>virtual
154 host</context>
155 <context>directory</context><context>.htaccess</context></contextlist>
156 <override>Indexes</override>
157 <compatibility>Disponible depuis le version 2.0.51
158 d'Apache</compatibility>
159
160 <usage>
161     <p>La directive <directive>DirectorySlash</directive> permet de
162     d&eacute;terminer si <module>mod_dir</module> doit corriger ou non les URLs
163     pointant vers un r&eacute;pertoire.</p>
164
165     <p>En g&eacute;n&eacute;ral, si un utilisateur envoie une requ&ecirc;te pour une
166     ressource sans slash de fin, cette ressource repr&eacute;sentant un
167     r&eacute;pertoire, <module>mod_dir</module> le redirige vers la m&ecirc;me
168     ressource, mais <em>en ajoutant</em> un slash de fin, et ceci pour
169     plusieurs bonnes raisons :</p>
170
171     <ul>
172     <li>La requ&ecirc;te de l'utilisateur contiendra finalement l'URL
173     canonique de la ressource</li>
174     <li><module>mod_autoindex</module> fonctionnera correctement. Comme
175     il n'indique pas le chemin dans le lien, le chemin de l'URL serait
176     incorrect.</li>
177     <li>La directive <directive
178     module="mod_dir">DirectoryIndex</directive> n'est &eacute;valu&eacute;e
179     <em>que</em> pour les r&eacute;pertoires se terminant par un slash.</li>
180     <li>Les r&eacute;f&eacute;rences &agrave; des URLs relatives dans les pages html
181     fonctionneront alors correctement.</li>
182     </ul>
183
184     <p>Si vous ne souhaitez pas voir ces effets, <em>et</em> si
185     les raisons &eacute;voqu&eacute;es ci-dessus ne s'appliquent pas &agrave; vous, vous
186     pouvez d&eacute;sactiver la redirection comme indiqu&eacute; ci-dessous.
187     Gardez cependant &agrave; l'esprit que ceci peut avoir des r&eacute;percutions en
188     mati&egrave;re de s&eacute;curit&eacute;.</p>
189
190     <example>
191         # voir l'avertissement de s&eacute;curit&eacute; ci-dessous !<br />
192         &lt;Location /un/chemin&gt;<br />
193         <indent>
194             DirectorySlash Off<br />
195             SetHandler un-gestionnaire<br />
196         </indent>
197         &lt;/Location&gt;
198     </example>
199
200     <note type="warning"><title>Avertissement de s&eacute;curit&eacute;</title>
201     <p>La d&eacute;sactivation de la redirection "slash de fin" peut entra&icirc;ner
202     la divulgation d'informations. Consid&eacute;rons la situation o&ugrave;
203     <module>mod_autoindex</module> est actif (<code>Options
204     +Indexes</code>), o&ugrave; la directive <directive module="mod_dir"
205     >DirectoryIndex</directive> a pour valeur une ressource valide (par
206     exemple <code>index.html</code>), et o&ugrave; aucun gestionnaire
207     particulier n'a &eacute;t&eacute; d&eacute;fini pour cette URL. Dans ce cas, une requ&ecirc;te
208     avec slash de fin afficherait le contenu du fichier
209     <code>index.html</code> ; <strong>par contre, une requ&ecirc;te sans slash
210     de fin afficherait un listing du contenu du
211     r&eacute;pertoire</strong>.</p>
212     </note>
213     <p>Notez aussi que certains navigateurs peuvent modifier par erreur
214     des requ&ecirc;tes POST en requ&ecirc;tes GET lors d'une redirection, les
215     donn&eacute;es POST &eacute;tant alors perdues.</p>
216 </usage>
217 </directivesynopsis>
218 <directivesynopsis>
219 <name>FallbackResource</name>
220 <description>D&eacute;finit une URL par d&eacute;faut pour les requ&ecirc;tes qui ne ciblent
221 aucun fichier</description>
222 <syntax>FallbackResource <var>url-locale</var></syntax>
223 <default>Aucune - httpd renvoie un code d'erreur 404 (Not Found)</default>
224 <contextlist><context>server config</context><context>virtual host</context>
225 <context>directory</context><context>.htaccess</context></contextlist>
226 <override>Indexes</override>
227 <usage>
228     <p>Cette directive permet de d&eacute;finir un traitement pour toute URL
229     qui ne correspond &agrave; aucune ressource de votre syst&egrave;me de fichiers,
230     et qui provoquerait sans cela l'envoi d'un code d'erreur HTTP 404
231     (Not Found).
232     Par exemple</p>
233     <example>
234         <code>FallbackResource /not-404.php</code>
235     </example>
236     <p>fait en sorte que les requ&ecirc;tes ne correspondant &agrave; aucun fichier
237     soient trait&eacute;es par <code>non-404.php</code>, sans affecter les
238     requ&ecirc;tes pour des fichiers existants.</p>
239     <p>Il est souvent souhaitable qu'un seul fichier ou ressource traite
240     toutes les requ&ecirc;tes &agrave; destination d'un r&eacute;pertoire
241     particulier, sauf pour les requ&ecirc;tes qui correspondent &agrave; un fichier
242     ou script existant. On y fait souvent r&eacute;f&eacute;rence sous le terme
243     'contr&ocirc;leur frontal'.</p>
244     <p>Dans les versions plus anciennes de httpd, cet effet n&eacute;cessitait
245     en g&eacute;n&eacute;ral <module>mod_rewrite</module>, et l'utilisation des tests
246     conditionnels <code>-f</code> et <code>-d</code> pour v&eacute;rifier
247     l'existence des fichiers et r&eacute;pertoires. Maintenant, une seule ligne
248     de configuration est n&eacute;cessaire.</p>
249     <example>
250         <code>FallbackResource /index.php</code>
251     </example>
252     <p>Les fichiers existants comme des images, des fichiers css, etc...
253     seront trait&eacute;s normalement.</p>
254     <p>Pour un URI interm&eacute;diaire tel que
255     <em>http://example.com/blog/</em>, cet URI interm&eacute;diaire doit &ecirc;tre
256     sp&eacute;cifi&eacute; en tant que <var>url-locale</var> :</p>
257     <example>
258          <code>
259              &lt;Directory /web/example.com/htdocs/blog&gt;<br />
260              <indent>
261                    FallbackResource /blog/index.php<br />
262              </indent>
263              &lt;/Directory&gt;
264          </code>
265     </example>
266 </usage>
267 </directivesynopsis>
268
269
270 </modulesynopsis>