]> granicus.if.org Git - apache/blob - docs/manual/mod/mod_negotiation.html.fr
Rebuild.
[apache] / docs / manual / mod / mod_negotiation.html.fr
1 <?xml version="1.0" encoding="ISO-8859-1"?>
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="fr" xml:lang="fr"><head>
4 <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
5 <!--
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7               This file is generated from xml source: DO NOT EDIT
8         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
9       -->
10 <title>mod_negotiation - Serveur Apache HTTP Version 2.5</title>
11 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
12 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
13 <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" />
14 <script src="../style/scripts/prettify.min.js" type="text/javascript">
15 </script>
16
17 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
18 <body>
19 <div id="page-header">
20 <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>
21 <p class="apache">Serveur Apache HTTP Version 2.5</p>
22 <img alt="" src="../images/feather.png" /></div>
23 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
24 <div id="path">
25 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a> &gt; <a href="./">Modules</a></div>
26 <div id="page-content">
27 <div id="preamble"><h1>Module Apache mod_negotiation</h1>
28 <div class="toplang">
29 <p><span>Langues Disponibles: </span><a href="../en/mod/mod_negotiation.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
30 <a href="../fr/mod/mod_negotiation.html" title="Français">&nbsp;fr&nbsp;</a> |
31 <a href="../ja/mod/mod_negotiation.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a></p>
32 </div>
33 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Effectue la <a href="../content-negotiation.html">négociation de
34 contenu</a></td></tr>
35 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr>
36 <tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>negotiation_module</td></tr>
37 <tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_negotiation.c</td></tr></table>
38 <h3>Sommaire</h3>
39
40     <p>La négociation de contenu, ou plus précisément la sélection de
41     contenu, est la sélection parmi plusieurs documents disponibles, du
42     document qui "colle" au plus près des possibilités du client. Pour y
43     parvenir, deux méthodes sont employées.</p>
44
45     <ul>
46       <li>Une table de correspondances de types (un fichier associé au
47       gestionnaire <code>type-map</code>) qui contient une liste
48       explicite des fichiers contenant les différentes variantes.</li>
49
50       <li>Une recherche multivues (Multiviews) (activée par l'<code class="directive"><a href="../mod/core.html#options">Options</a></code> <code>Multiviews</code>), où le
51       serveur effectue une recherche de correspondance de modèle de nom
52       de fichier implicite, et fait son choix parmi les résultats.</li>
53     </ul>
54 </div>
55 <div id="quickview"><h3>Sujets</h3>
56 <ul id="topics">
57 <li><img alt="" src="../images/down.gif" /> <a href="#typemaps">Tables de correspondances de types</a></li>
58 <li><img alt="" src="../images/down.gif" /> <a href="#multiviews">Multivues</a></li>
59 </ul><h3 class="directives">Directives</h3>
60 <ul id="toc">
61 <li><img alt="" src="../images/down.gif" /> <a href="#cachenegotiateddocs">CacheNegotiatedDocs</a></li>
62 <li><img alt="" src="../images/down.gif" /> <a href="#forcelanguagepriority">ForceLanguagePriority</a></li>
63 <li><img alt="" src="../images/down.gif" /> <a href="#languagepriority">LanguagePriority</a></li>
64 </ul>
65 <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mod_negotiation">Problèmes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mod_negotiation">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
66 <ul class="seealso">
67 <li><code class="directive"><a href="../mod/core.html#options">Options</a></code></li>
68 <li><code class="module"><a href="../mod/mod_mime.html">mod_mime</a></code></li>
69 <li><a href="../content-negotiation.html">Négociation de
70 contenu</a></li>
71 <li><a href="../env.html">Variables d'environnement</a></li>
72 <li><a href="#comments_section">Commentaires</a></li></ul></div>
73 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
74 <div class="section">
75 <h2><a name="typemaps" id="typemaps">Tables de correspondances de types</a></h2>
76     <p>Une table de correspondances de types possède un format similaire
77     à celui des en-têtes de messagerie RFC822. Elle contient des
78     descriptions de documents séparées par des lignes vides, toute ligne
79     commençant par un dièse ('#') étant considérée comme un
80     commentaire. Une description de document comporte plusieurs
81     enregistrements d'en-têtes ; chaque enregistrement peut être réparti
82     sur plusieurs lignes à condition que les lignes supplémentaires
83     commencent par un ou plusieurs espaces. Lors du traitement, les
84     espaces de début de ligne seront supprimés et les lignes
85     concaténées. L'enregistrement d'un en-tête comprend un mot-clé qui
86     se termine toujours par un caractère "deux-points" ':', suivi d'une
87     valeur. Les espaces sont autorisés entre le nom d'en-tête et sa
88     valeur, ainsi qu'entre les différents éléments de la valeur. Les
89     en-têtes autorisés sont :</p>
90
91     <dl>
92       <dt><code>Content-Encoding:</code></dt>
93       <dd>Le codage du fichier. Apache ne reconnaît que les codages
94       définis par une directive <code class="directive"><a href="../mod/mod_mime.html#addencoding">AddEncoding</a></code>. Sont normalement inclus
95       les codages <code>x-compress</code> pour les fichiers compressés
96       avec compress, et <code>x-gzip</code> pour les fichiers compressés
97       avec gzip. Le préfixe <code>x-</code> est ignoré lors des
98       comparaisons de codages.</dd>
99
100       <dt><code>Content-Language:</code></dt>
101       <dd>Le(s) langage(s) de la variante, sous la forme d'un symbole de
102       langage Internet standard (<a href="http://www.ietf.org/rfc/rfc1766.txt">RFC 1766</a>). Par
103       exemple, <code>en</code> correspond à l'anglais. Si la variante
104       contient plusieurs langages, ils sont séparés par des
105       virgules.</dd>
106
107       <dt><code>Content-Length:</code></dt>
108       <dd>La taille du fichier en octets. Si cet en-tête n'est pas
109       présent, c'est la taille réelle du fichier qui est utilisée.</dd>
110
111       <dt><code>Content-Type:</code></dt>
112
113       <dd>
114         Le <a class="glossarylink" href="../glossary.html#mime-type" title="voir glossaire">type MIME</a> du document
115         avec des paramètres optionnels. Les paramètres sont séparés du
116         type de médium ainsi qu'entre eux par un point-virgule, et
117         possèdent la syntaxe <code>nom=valeur</code>. Les paramètres
118         courants sont :
119
120         <dl>
121           <dt><code>level</code></dt>
122           <dd>un entier spécifiant la version du type de média. Pour
123           <code>text/html</code>, la valeur par défaut est 2, sinon
124           0.</dd>
125
126           <dt><code>qs</code></dt>
127           <dd>un nombre en virgule flottante de 0[.000] à 1[.000], indiquant la
128           "qualité" relative de la variante courante par rapport aux
129           autres variantes disponibles, indépendamment des possibilités
130           du client. Par exemple, un fichier jpeg est en général une
131           source de qualité supérieure à un fichier ascii s'il est censé
132           représenter une image. Cependant, si la ressource représentée
133           est une image ascii, un fichier ascii possèdera une qualité
134           supérieure à un fichier jpeg. Toutes les valeurs de
135           <code>qs</code> sont donc spécifiques à une certaine
136           ressource.</dd>
137         </dl>
138
139         <div class="example"><h3>Exemple</h3><p><code>
140           Content-Type: image/jpeg; qs=0.8
141         </code></p></div>
142       </dd>
143
144       <dt><code>URI:</code></dt>
145       <dd>l'URI du fichier contenant la variante (du type de médium
146       donné, codé selon le codage de contenu donné). Cet URI est
147       considéré comme relatif au fichier de correspondances ; il doit
148       être situé sur le même serveur, et doit faire référence au
149       fichier auquel le client se verrait accorder l'accès s'il était
150       requis directement.</dd>
151
152       <dt><code>Body:</code></dt>
153       <dd>Le contenu réel de la ressource
154       peut être inclus dans la table de correspondances en utilisant
155       l'en-tête Body. Cet en-tête doit contenir une chaîne désignant un
156       délimiteur pour le contenu du corps. Les lignes suivantes du
157       fichier de correspondances de types seront alors considérées comme
158       parties du corps de la ressource jusqu'à ce que le délimiteur soit
159       détecté.
160
161       <div class="example"><h3>Exemple:</h3><p><code>
162         Body:----xyz----<br />
163         &lt;html&gt;<br />
164         &lt;body&gt;<br />
165         &lt;p&gt;Contenu de la page.&lt;/p&gt;<br />
166         &lt;/body&gt;<br />
167         &lt;/html&gt;<br />
168         ----xyz----
169       </code></p></div>
170       </dd>
171     </dl>
172
173     <p>Considérons une ressource, <code>document.html</code>, disponible
174     en anglais, en français et en allemand. Les fichiers correspondants
175     se nomment respectivement <code>document.html.en</code>,
176     <code>document.html.fr</code>, et <code>document.html.de</code>. Le
177     fichier de correspondances de types se nommera
178     <code>document.html.var</code> et contiendra ce qui suit :</p>
179
180     <div class="example"><p><code>
181     URI: document.html<br />
182     <br />
183     Content-language: en<br />
184     Content-type: text/html<br />
185     URI: document.html.en<br />
186     <br />
187     Content-language: fr<br />
188     Content-type: text/html<br />
189     URI: document.html.fr<br />
190     <br />
191     Content-language: de<br />
192     Content-type: text/html<br />
193     URI: document.html.de<br />
194     <br />
195
196     </code></p></div>
197
198     <p>Ces quatre fichiers doivent se trouver dans le même répertoire,
199     et le fichier <code>.var</code> doit être associé au gestionnaire
200     <code>type-map</code> via une directive <code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code> :</p>
201
202     <pre class="prettyprint lang-config">AddHandler type-map .var</pre>
203
204
205     <p>A l'arrivée d'une requête pour la ressource
206     <code>document.html.var</code>, la variante de
207     <code>document.html</code> qui correspond le mieux à la préference
208     de langage spécifiée dans l'en-tête de la requête de l'utilisateur
209     <code>Accept-Language</code> sera choisie.</p>
210
211     <p>Si <code>Multiviews</code> est activée, et si <code class="directive"><a href="../mod/mod_mime.html#multiviewsmatch">MultiviewsMatch</a></code> est définie à
212     "handlers" ou "any", une requête pour <code>document.html</code> va
213     rechercher <code>document.html.var</code>, et continuer la
214     négociation avec le gestionnaire explicite type-map.</p>
215
216     <p>D'autres directives de configuration, comme <code class="directive"><a href="../mod/mod_alias.html#alias">Alias</a></code>, peuvent être utilisées pour
217     associer <code>document.html</code> avec
218     <code>document.html.var</code>.</p>
219 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
220 <div class="section">
221 <h2><a name="multiviews" id="multiviews">Multivues</a></h2>
222     <p>Une recherche Multivues est activée par l'<code class="directive"><a href="../mod/core.html#options">Options</a></code> <code>Multiviews</code>. Si le
223     serveur reçoit une requête pour <code>/un/répertoire/foo</code>, et
224     si <code>/un/répertoire/foo</code> n'existe pas, le serveur parcourt
225     le répertoire à la recherche de tous les fichiers de nom
226     <code>foo.*</code>, et simule véritablement une correspondance de
227     type qui nomme tous ces fichiers en leur assignant les mêmes type
228     de média et codage de contenu qu'ils auraient eus si le client avait
229     requis l'un d'entre eux avec son nom complet. Il choisit ensuite le
230     fichier qui correspond le mieux au profile du client, puis renvoie
231     le document.</p>
232
233     <p>La directive <code class="directive"><a href="../mod/mod_mime.html#multiviewsmatch">MultiviewsMatch</a></code> définit si Apache doit
234     prendre en compte les fichiers qui ne comportent pas de métadonnées
235     de négociation de contenu lors du choix du fichier à servir.</p>
236 </div>
237 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
238 <div class="directive-section"><h2><a name="cachenegotiateddocs" id="cachenegotiateddocs">Directive</a> <a name="CacheNegotiatedDocs" id="CacheNegotiatedDocs">CacheNegotiatedDocs</a></h2>
239 <table class="directive">
240 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Allows content-negotiated documents to be
241 cached by proxy servers</td></tr>
242 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>CacheNegotiatedDocs On|Off</code></td></tr>
243 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>CacheNegotiatedDocs Off</code></td></tr>
244 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
245 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
246 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_negotiation</td></tr>
247 </table>
248     <p>If set, this directive allows content-negotiated documents
249     to be cached by proxy servers. This could mean that clients
250     behind those proxys could retrieve versions of the documents
251     that are not the best match for their abilities, but it will
252     make caching more efficient.</p>
253
254     <p>This directive only applies to requests which come from
255     HTTP/1.0 browsers. HTTP/1.1 provides much better control over
256     the caching of negotiated documents, and this directive has no
257     effect in responses to HTTP/1.1 requests.</p>
258
259
260 </div>
261 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
262 <div class="directive-section"><h2><a name="forcelanguagepriority" id="forcelanguagepriority">Directive</a> <a name="ForceLanguagePriority" id="ForceLanguagePriority">ForceLanguagePriority</a></h2>
263 <table class="directive">
264 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Action to take if a single acceptable document is not
265 found</td></tr>
266 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ForceLanguagePriority None|Prefer|Fallback [Prefer|Fallback]</code></td></tr>
267 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ForceLanguagePriority Prefer</code></td></tr>
268 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
269 <tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
270 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
271 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_negotiation</td></tr>
272 </table>
273     <p>The <code class="directive">ForceLanguagePriority</code> directive uses
274     the given <code class="directive"><a href="#languagepriority">LanguagePriority</a></code> to satisfy
275     negotiation where the server could otherwise not return a single
276     matching document.</p>
277
278     <p><code>ForceLanguagePriority Prefer</code> uses
279     <code>LanguagePriority</code> to serve a one valid result, rather
280     than returning an HTTP result 300 (MULTIPLE CHOICES) when there
281     are several equally valid choices.  If the directives below were
282     given, and the user's <code>Accept-Language</code> header assigned
283     <code>en</code> and <code>de</code> each as quality <code>.500</code>
284     (equally acceptable) then the first matching variant, <code>en</code>,
285     will be served.</p>
286
287     <pre class="prettyprint lang-config">LanguagePriority en fr de
288 ForceLanguagePriority Prefer</pre>
289
290
291     <p><code>ForceLanguagePriority Fallback</code> uses
292     <code class="directive"><a href="#languagepriority">LanguagePriority</a></code> to
293     serve a valid result, rather than returning an HTTP result 406
294     (NOT ACCEPTABLE). If the directives below were given, and the user's
295     <code>Accept-Language</code> only permitted an <code>es</code>
296     language response, but such a variant isn't found, then the first
297     variant from the <code class="directive"><a href="#languagepriority">LanguagePriority</a></code> list below will be served.</p>
298
299     <pre class="prettyprint lang-config">LanguagePriority en fr de
300 ForceLanguagePriority Fallback</pre>
301
302
303     <p>Both options, <code>Prefer</code> and <code>Fallback</code>, may be
304     specified, so either the first matching variant from <code class="directive"><a href="#languagepriority">LanguagePriority</a></code> will be served if
305     more than one variant is acceptable, or first available document will
306     be served if none of the variants matched the client's acceptable list
307     of languages.</p>
308
309 <h3>Voir aussi</h3>
310 <ul>
311 <li><code class="directive"><a href="../mod/mod_mime.html#addlanguage">AddLanguage</a></code></li>
312 </ul>
313 </div>
314 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
315 <div class="directive-section"><h2><a name="languagepriority" id="languagepriority">Directive</a> <a name="LanguagePriority" id="LanguagePriority">LanguagePriority</a></h2>
316 <table class="directive">
317 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>The precedence of language variants for cases where
318 the client does not express a preference</td></tr>
319 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LanguagePriority <var>MIME-lang</var> [<var>MIME-lang</var>]
320 ...</code></td></tr>
321 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
322 <tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
323 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
324 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_negotiation</td></tr>
325 </table>
326     <p>The <code class="directive">LanguagePriority</code> sets the precedence
327     of language variants for the case where the client does not
328     express a preference, when handling a Multiviews request. The list
329     of <var>MIME-lang</var> are in order of decreasing preference.</p>
330
331     <pre class="prettyprint lang-config">LanguagePriority en fr de</pre>
332
333
334     <p>For a request for <code>foo.html</code>, where
335     <code>foo.html.fr</code> and <code>foo.html.de</code> both
336     existed, but the browser did not express a language preference,
337     then <code>foo.html.fr</code> would be returned.</p>
338
339     <p>Note that this directive only has an effect if a 'best'
340     language cannot be determined by any other means or the <code class="directive"><a href="#forcelanguagepriority">ForceLanguagePriority</a></code> directive
341     is not <code>None</code>. In general, the client determines the
342     language preference, not the server.</p>
343
344 <h3>Voir aussi</h3>
345 <ul>
346 <li><code class="directive"><a href="../mod/mod_mime.html#addlanguage">AddLanguage</a></code></li>
347 </ul>
348 </div>
349 </div>
350 <div class="bottomlang">
351 <p><span>Langues Disponibles: </span><a href="../en/mod/mod_negotiation.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
352 <a href="../fr/mod/mod_negotiation.html" title="Français">&nbsp;fr&nbsp;</a> |
353 <a href="../ja/mod/mod_negotiation.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a></p>
354 </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&amp;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>
355 <script type="text/javascript"><!--//--><![CDATA[//><!--
356 var comments_shortname = 'httpd';
357 var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_negotiation.html';
358 (function(w, d) {
359     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
360         d.write('<div id="comments_thread"><\/div>');
361         var s = d.createElement('script');
362         s.type = 'text/javascript';
363         s.async = true;
364         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
365         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
366     }
367     else {
368         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
369     }
370 })(window, document);
371 //--><!]]></script></div><div id="footer">
372 <p class="apache">Copyright 2017 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
373 <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[//><!--
374 if (typeof(prettyPrint) !== 'undefined') {
375     prettyPrint();
376 }
377 //--><!]]></script>
378 </body></html>