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        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5              This file is generated from xml source: DO NOT EDIT
6        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7      -->
8<title>mod_headers - Serveur Apache HTTP</title>
9<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11<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" />
12<script src="/style/scripts/prettify.min.js" type="text/javascript">
13</script>
14
15<link href="/images/favicon.ico" rel="shortcut icon" /></head>
16<body>
17<div id="page-header">
18<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.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>
19<p class="apache">Serveur Apache HTTP Version 2.4</p>
20<img alt="" src="/images/feather.gif" /></div>
21<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="/images/left.gif" /></a></div>
22<div id="path">
23<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.4</a> &gt; <a href="./">Modules</a></div>
24<div id="page-content">
25<div id="preamble"><h1>Module Apache mod_headers</h1>
26<div class="toplang">
27<p><span>Langues Disponibles: </span><a href="/en/mod/mod_headers.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
28<a href="/fr/mod/mod_headers.html" title="Fran�ais">&nbsp;fr&nbsp;</a> |
29<a href="/ja/mod/mod_headers.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
30<a href="/ko/mod/mod_headers.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
31</div>
32<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Personnalisation des en-t�tes de requ�tes et de r�ponses
33HTTP</td></tr>
34<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
35<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur�de�Module:</a></th><td>headers_module</td></tr>
36<tr><th><a href="module-dict.html#SourceFile">Fichier�Source:</a></th><td>mod_headers.c</td></tr></table>
37<h3>Sommaire</h3>
38
39    <p>Ce module fournit des directives permettant de contr�ler et
40    modifier les en-t�tes de requ�tes et de r�ponses HTTP. Les en-t�tes
41    peuvent �tre fusionn�s, remplac�s ou supprim�s.</p>
42</div>
43<div id="quickview"><h3 class="directives">Directives</h3>
44<ul id="toc">
45<li><img alt="" src="/images/down.gif" /> <a href="#header">Header</a></li>
46<li><img alt="" src="/images/down.gif" /> <a href="#requestheader">RequestHeader</a></li>
47</ul>
48<h3>Sujets</h3>
49<ul id="topics">
50<li><img alt="" src="/images/down.gif" /> <a href="#order">Chronologie du traitement</a></li>
51<li><img alt="" src="/images/down.gif" /> <a href="#early">Traitement pr�coce et traitement
52tardif</a></li>
53<li><img alt="" src="/images/down.gif" /> <a href="#examples">Exemples</a></li>
54</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
55<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
56<div class="section">
57<h2><a name="order" id="order">Chronologie du traitement</a></h2>
58
59    <p>Les directives fournies par <code class="module"><a href="/mod/mod_headers.html">mod_headers</a></code> peuvent
60    s'ins�rer presque partout dans la configuration du serveur, et on
61    peut limiter leur port�e en les pla�ant dans des <a href="/sections.html">sections de configuration</a>.</p>
62
63    <p>La chronologie du traitement est importante et est affect�e par
64    l'ordre d'apparition des directives dans le fichier de configuration
65    et par leur placement dans les <a href="/sections.html#mergin">sections de configuration</a>. Ainsi,
66    ces deux directives ont un effet diff�rent si leur ordre est invers�
67    :</p>
68
69    <pre class="prettyprint lang-config">RequestHeader append MirrorID "mirror 12"
70RequestHeader unset MirrorID</pre>
71
72
73    <p>Dans cet ordre, l'en-t�te <code>MirrorID</code> n'est pas d�fini.
74    Si l'ordre des directives �tait invers�, l'en-t�te
75    <code>MirrorID</code> serait d�fini � "mirror 12".</p>
76</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
77<div class="section">
78<h2><a name="early" id="early">Traitement pr�coce et traitement
79tardif</a></h2>
80    <p><code class="module"><a href="/mod/mod_headers.html">mod_headers</a></code> peut agir soir pr�cocement, soit
81    tardivement au niveau de la requ�te. Le mode normal est le mode
82    tardif, lorsque les en-t�tes de <em>requ�te</em> sont d�finis, imm�diatement
83    avant l'ex�cution du g�n�rateur de contenu, et pour les en-t�tes de
84    <em>r�ponse</em>, juste au moment o� la r�ponse est envoy�e sur le r�seau.
85    Utilisez toujours le mode tardif sur un serveur en production.</p>
86
87    <p>Le mode pr�coce a �t� con�u � des fins d'aide aux tests et au
88    d�bogage pour les d�veloppeurs. Les directives d�finies en utilisant
89    le mot-cl� <code>early</code> sont cens�es agir au tout d�but du
90    traitement de la requ�te. Cela signifie que l'on peut les utiliser
91    pour simuler diff�rentes requ�tes et d�finir des situations de test,
92    tout en gardant � l'esprit que les en-t�tes peuvent �tre modifi�s �
93    tout moment par d'autres modules avant que le r�ponse ne soit
94    g�n�r�e.</p>
95
96    <p>Comme les directives pr�coces sont trait�es avant que le
97    chemin de la requ�te ne soit parcouru, les en-t�tes
98    pr�coces ne peuvent �tre d�finis que dans un contexte de serveur
99    principal ou de serveur virtuel. Les directives pr�coces ne peuvent
100    pas d�pendre d'un chemin de requ�te, si bien qu'elles �choueront
101    dans des contextes tels que <code>&lt;Directory&gt;</code> ou
102    <code>&lt;Location&gt;</code>.</p>
103</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
104<div class="section">
105<h2><a name="examples" id="examples">Exemples</a></h2>
106
107    <ol>
108      <li>
109        Copie tous les en-t�tes de requ�te qui commencent par "TS" vers
110	les en-t�tes de la r�ponse :
111
112        <pre class="prettyprint lang-config">Header echo ^TS</pre>
113
114      </li>
115
116      <li>
117        Ajoute � la r�ponse un en-t�te, <code>mon-en-t�te</code>, qui
118	contient un horodatage permettant de d�terminer le moment o� la
119	requ�te a �t� re�ue, et le temps qui s'est �coul� jusqu'� ce que
120	la requ�te ait commenc� � �tre servie. Cet en-t�te peut �tre
121	utilis� par le client pour estimer la charge du serveur ou
122	isoler les goulets d'�tranglement entre le client et le
123	serveur.
124
125        <pre class="prettyprint lang-config">Header set mon-en-t�te "%D %t"</pre>
126
127
128        <p>le r�sultat est l'ajout � la r�ponse d'un en-t�te du type :</p>
129
130        <div class="example"><p><code>
131          mon-en-t�te: D=3775428 t=991424704447256
132        </code></p></div>
133      </li>
134
135      <li>
136        Dit Bonjour � Joe
137
138        <div class="example"><p><code>
139          Header set mon-en-t�te "Bonjour Joe. Il a fallu %D microsecondes \<br />
140          � Apache pour servir cette requ�te."
141        </code></p></div>
142
143        <p>le r�sultat est l'ajout � la r�ponse d'un en-t�te du type :</p>
144
145        <pre class="prettyprint lang-config">	Header set MyHeader "Bonjour Joe. Il a fallu D=3775428 microsecondes � Apache
146          pour servir cette requ�te."</pre>
147
148      </li>
149
150      <li>
151        Ajoute l'en-t�te <code>mon-en-t�te</code> � la r�ponse si et
152	seulement si l'en-t�te <code>mon-en-t�te-requ�te</code> est
153	pr�sent dans la requ�te. Ceci peut s'av�rer utile pour g�n�rer
154	des en-t�tes de r�ponse "� la t�te du client". Notez que cet
155	exemple n�cessite les services du module
156	<code class="module"><a href="/mod/mod_setenvif.html">mod_setenvif</a></code>.
157
158        <pre class="prettyprint lang-config">SetEnvIf MyRequestHeader myvalue HAVE_MyRequestHeader
159Header set MyHeader "%D %t mytext" env=HAVE_MyRequestHeader</pre>
160
161
162        <p>Si l'en-t�te <code>mon-en-t�te-requ�te: mavaleur</code> est
163	pr�sent dans la requ�te HTTP, la r�ponse contiendra un en-t�te
164	du type :</p>
165
166        <div class="example"><p><code>
167          mon-en-t�te: D=3775428 t=991424704447256 montexte
168        </code></p></div>
169      </li>
170
171      <li>
172        Permet � DAV de fonctionner avec Apache sur SSL (voir la <a href="http://svn.haxx.se/users/archive-2006-03/0549.shtml">description
173	du probl�me</a>) en rempla�ant <var>https:</var> par
174	<var>http:</var> dans l'en-t�te <var>Destination</var> :
175
176        <pre class="prettyprint lang-config">RequestHeader edit Destination ^https: http: early</pre>
177
178      </li>
179
180      <li>
181        D�finit la valeur d'un m�me en-t�te sous de multiples conditions
182	non exclusives, mais ne duplique pas une valeur d�j� d�finie
183	dans l'en-t�te qui en r�sulte. Si toutes les conditions
184	suivantes sont satisfaites pour une requ�te (en d'autres termes,
185	si les trois variables d'environnement <code>CGI</code>,
186	<code>NO_CACHE</code> et <code>NO_STORE</code> existent pour la
187	requ�te) :
188
189        <pre class="prettyprint lang-config">Header merge Cache-Control no-cache env=CGI
190Header merge Cache-Control no-cache env=NO_CACHE
191Header merge Cache-Control no-store env=NO_STORE</pre>
192
193
194        <p>alors, la r�ponse contiendra l'en-t�te suivant :</p>
195
196        <div class="example"><p><code>
197          Cache-Control: no-cache, no-store
198        </code></p></div>
199
200        <p>Si <code>append</code> avait �t� utilis� � la place de
201	<code>merge</code>, la r�ponse aurait contenu l'en-t�te suivant
202	:</p>
203
204        <div class="example"><p><code>
205          Cache-Control: no-cache, no-cache, no-store
206        </code></p></div>
207      </li>
208      <li>
209        D�finit un cookie de test si et seulement si le client n'envoie
210	pas de cookie
211        <pre class="prettyprint lang-config">Header set Set-Cookie testcookie "expr=-z %{req:Cookie}"</pre>
212
213      </li>
214    </ol>
215</div>
216<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
217<div class="directive-section"><h2><a name="Header" id="Header">Header</a> <a name="header" id="header">Directive</a></h2>
218<table class="directive">
219<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configure les en-t�tes d'une r�ponse HTTP</td></tr>
220<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Header [<var>condition</var>] add|append|echo|edit|edit*|merge|set|setifempty|unset|note
221<var>en-t�te</var> [<var>valeur</var>] [<var>remplacement</var>]
222[early|env=[!]<var>variable</var>]|expr=<var>expression</var>]
223</code></td></tr>
224<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire, .htaccess</td></tr>
225<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
226<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
227<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_headers</td></tr>
228<tr><th><a href="directive-dict.html#Compatibility">Compatibilit�:</a></th><td>La condition par d�faut est temporairement pass�e
229� "always" dans les version 2.3.9 et 2.3.10. SetIfEmpty est
230disponible depuis la version 2.4.7 du serveur HTTP Apache.</td></tr>
231</table>
232    <p>Cette directive permet de remplacer, fusionner, ou
233    supprimer des en-t�tes de r�ponse HTTP. L'en-t�te est modifi� juste
234    apr�s que le gestionnaire de contenu et les filtres en sortie ne
235    s'ex�cutent, ce qui permet la modification des en-t�tes
236    sortants.</p>
237
238    <p>L'argument optionnel <var>condition</var> permet de d�terminer
239    sur quelle table interne d'en-t�tes de r�ponses cette directive va
240    op�rer. D'autres composants du serveur peuvent avoir stock� leurs
241    en-t�tes de r�ponses dans la table correspondant �
242    <code>onsuccess</code> ou dans celle correspondant �
243    <code>always</code>. Dans ce contexte, "Always" fait r�f�rence au
244    choix d'envoyer les en-t�tes que vous ajoutez aux r�ponses, qu'elle
245    soient avec succ�s ou �chou�es ; par contre, si votre action est une
246    fonction d'un en-t�te existant, vous devrez lire la documentation de
247    mani�re plus approfondie car dans ce cas, les choses se compliquent.</p>
248
249    <p>Vous pouvez avoir � changer la valeur par d�faut
250    <code>onsuccess</code> en <code>always</code> dans des circonstances
251    similaires � celles expos�es plus loin. Notez aussi que la r�p�tition
252    de cette directive avec les deux conditions peut �tre pertinente
253    dans certains sc�narios, car <code>always</code> n'englobe pas
254    <code>onsuccess</code> en ce qui concerne les en-t�tes existants :</p>
255
256    <ul>
257       <li>Vous ajoutez un en-t�te � une r�ponse �chou�e (non-2xx),
258       une redirection par exemple, et dans ce cas, seule la table
259       correspondant � <code>always</code> est utilis�e dans la r�ponse
260       d�finitive.</li>
261       <li>Vous modifiez ou supprimez un en-t�te g�n�r� par un script
262       CGI, et dans ce cas, les scripts CGI sont dans la table
263       correspondant � <code>always</code> et non dans la table par
264       d�faut.</li>
265       <li>Vous modifiez ou supprimez un en-t�te g�n�r� par tel ou tel
266       composant du serveur, mais cet en-t�te n'est pas trouv� par la
267       condition par d�faut <code>onsuccess</code>.</li>
268    </ul>
269
270    <p>L'action que cette directive provoque est d�termin�e par le
271    premier argument (ou par le second argument si une
272    <var>condition</var> est sp�cifi�e). Il peut prendre
273    une des valeurs suivantes :</p>
274
275    <dl>
276    <dt><code>add</code></dt>
277    <dd>L'en-t�te est ajout� au jeu d'en-t�tes pr�existant, m�me s'il
278    existe d�j�. Ceci peut conduire � la pr�sence de deux (ou plusieurs)
279    en-t�tes poss�dant le m�me nom et donc induire des cons�quences
280    impr�vues ; en g�n�ral, il est pr�f�rable d'utiliser
281    <code>set</code>, <code>append</code> ou <code>merge</code>.</dd>
282
283    <dt><code>append</code></dt>
284    <dd>La valeur d'en-t�te est ajout�e � tout en-t�te existant de m�me
285    nom. Lorsqu'une nouvelle valeur est ainsi ajout�e, elle est s�par�e
286    de celles qui sont d�j� pr�sentes par une virgule. Il s'agit de la
287    m�thode HTTP standard permettant d'affecter plusieurs valeurs � un
288    en-t�te.</dd>
289
290    <dt><code>echo</code></dt>
291    <dd>Les en-t�tes de la requ�te poss�dant le nom sp�cifi� sont
292    recopi�s vers les en-t�tes de la r�ponse. <var>en-t�te</var> peut
293    �tre une <a class="glossarylink" href="/glossary.html#regex" title="voir glossaire">expression rationnelle</a>, et
294    <var>valeur</var> ne doit pas �tre pr�sent.</dd>
295
296    <dt><code>edit</code></dt>
297    <dt><code>edit*</code></dt>
298    <dd>Si l'en-t�te existe, sa valeur est modifi�e en fonction d'une
299    <a class="glossarylink" href="/glossary.html#regex" title="voir glossaire">expression rationnelle</a> de type
300    recherche/remplacement. L'argument <var>valeur</var> est une
301    <a class="glossarylink" href="/glossary.html#regex" title="voir glossaire">expression rationnelle</a>, et
302    l'argument <var>remplacement</var> une cha�ne de caract�res de
303    remplacement qui peut contenir des r�f�rences
304    arri�res ou des sp�cificateurs de format. La forme
305    <code>edit</code> n'effectuera une
306    recherche/remplacement qu'une seule fois dans la valeur de
307    l'en-t�te, alors que la forme <code>edit*</code> en effectuera autant
308    que le nombre d'apparition de la cha�ne � remplacer.</dd>
309
310    <dt><code>merge</code></dt>
311    <dd>La valeur d'en-t�te est ajout�e � tout en-t�te de m�me nom, sauf
312    si elle appara�t d�j� dans la liste des valeurs pr�existantes de
313    l'en-t�te s�par�es par des virgules. Lorsqu'une nouvelle valeur est
314    ainsi ajout�e, elle est s�par�e de celles qui sont d�j� pr�sentes
315    par une virgule. Il s'agit de la m�thode HTTP standard permettant
316    d'affecter plusieurs valeurs � un en-t�te. Les valeurs sont
317    compar�es en tenant compte de la casse, et apr�s le traitement de
318    tous les sp�cificateurs de format. Une valeur entour�e de guillemets
319    est consid�r�e comme diff�rente de la m�me valeur mais sans
320    guillemets.</dd>
321
322    <dt><code>set</code></dt>
323    <dd>L'en-t�te est d�fini, rempla�ant tout en-t�te pr�existant avec
324    le m�me nom. L'argument <var>valeur</var> peut �tre une cha�ne de
325    formatage.</dd>
326
327    <dt><code>setifempty</code></dt>
328    <dd>L'en-t�te est d�fini, mais seulement s'il n'existe
329    aucun en-t�te avec le m�me nom. Disponible depuis la
330    version 2.4.7 du serveur HTTP Apache.</dd>
331
332    <dt><code>unset</code></dt>
333    <dd>L'en-t�te est supprim� s'il existe. Si plusieurs en-t�tes
334    poss�dent le m�me nom, ils seront tous supprim�s. L'argument
335    <var>value</var> ne doit pas appara�tre.</dd>
336
337    <dt><code>note</code></dt>
338    <dd>La valeur de l'<var>en-t�te</var> consid�r� est copi�e dans une
339    note interne dont le nom est sp�cifi� via l'argument
340    <var>valeur</var>. Ceci permet d'enregistrer la valeur d'un en-t�te
341    envoy� par un programme CGI ou une ressource mandat�e, m�me s'il
342    est pr�vu de l'effacer.</dd>
343
344    </dl>
345
346    <p>Cet argument est suivi d'un nom d'<var>en-t�te</var> qui peut se
347    terminer par un caract�re ':', mais ce n'est pas obligatoire. La
348    casse est ignor�e avec <code>set</code>, <code>append</code>,
349    <code>merge</code>, <code>add</code>, <code>unset</code> et
350    <code>edit</code>. Le nom d'<var>en-t�te</var> est sensible � la
351    casse pour <code>echo</code> et peut �tre une <a class="glossarylink" href="/glossary.html#regex" title="voir glossaire">expression rationnelle</a>.</p>
352
353    <p>Avec <code>set</code>, <code>append</code>, <code>merge</code> et
354    <code>add</code>, une <var>valeur</var> est sp�cifi�e comme
355    argument suivant. Si <var>valeur</var> contient des espaces, elle
356    doit �tre entour�e de guillemets. <var>valeur</var> peut �tre une
357    cha�ne de caract�res, une cha�ne contenant des sp�cificateurs de
358    format, ou une combinaison des deux. <var>valeur</var> supporte les
359    sp�cificateurs de format suivants :</p>
360
361    <table class="bordered"><tr class="header"><th>Format</th><th>Description</th></tr>
362<tr><td><code>%%</code></td>
363        <td>Le caract�re pourcentage</td></tr>
364<tr class="odd"><td><code>%t</code></td>
365        <td>Le moment de r�ception de la requ�te en temps
366	universel coordonn� depuis le temps epoch (Jan. 1, 1970) et
367	exprim� en microsecondes. La valeur est pr�c�d�e de
368	<code>t=</code>.</td></tr>
369<tr><td><code>%D</code></td>
370        <td>Le temps �coul� entre la r�ception de la requ�te et l'envoi
371	des en-t�tes sur le r�seau. Il s'agit de la dur�e de traitement
372	de la requ�te. La valeur est pr�c�d�e de <code>D=</code>. La
373	valeur est exprim�e en microsecondes.</td></tr>
374<tr class="odd"><td><code>%l</code></td>
375        <td>La charge courante du serveur. Ce sont les valeurs fournies
376	par <code>getloadavg()</code> qui repr�sentent la charge
377	courante, ainsi que la charge moyenne pendant les cinq et les
378	quinze derni�res minutes. Chaque valeur est pr�c�d�e de
379	<code>l=</code> et s�par�e des autres par un slash
380	<code>/</code>.
381        </td></tr>
382<tr><td><code>%i</code></td>
383        <td>Le pourcentage de disponibilit� de httpd (0 � 100) bas� sur
384	le nombre de threads et de processus disponibles. La valeur est
385	pr�c�d�e de <code>i=</code>.
386        </td></tr>
387<tr class="odd"><td><code>%b</code></td>
388        <td>Le pourcentage d'utilisation de httpd (0 � 100) bas� sur
389	le nombre de threads et de processus disponibles. La valeur est
390	pr�c�d�e de <code>b=</code>.
391        </td></tr>
392<tr><td><code>%{NOM_VARIABLE}e</code></td>
393        <td>Le contenu de la <a href="/env.html">variable
394	d'environnement</a> <code>NOM_VARIABLE</code>.</td></tr>
395<tr class="odd"><td><code>%{NOM_VARIABLE}s</code></td>
396        <td>Le contenu de la <a href="/env.html">variable
397	d'environnement SSL</a> <code>NOM_VARIABLE</code>, si
398	<code class="module"><a href="/mod/mod_ssl.html">mod_ssl</a></code> est activ�.</td></tr>
399</table>
400
401    <div class="note"><h3>Note</h3>
402      <p>Le sp�cificateur de format <code>%s</code> est disponible
403      depuis la version 2.1 d'Apache ; il peut �tre utilis� � la place
404      de <code>%e</code> pour �viter de devoir sp�cifier
405      <code>SSLOptions +StdEnvVars</code>. Cependant, si
406      <code>SSLOptions +StdEnvVars</code> doit tout de m�me �tre
407      sp�cifi� pour une raison quelconque, <code>%e</code> sera plus
408      efficace que <code>%s</code>.</p>
409    </div>
410
411    <p><code>edit</code>n�cessite les deux arguments
412    <var>valeur</var>, qui est une <a class="glossarylink" href="/glossary.html#regex" title="voir glossaire">expression
413    rationnelle</a>, et une cha�ne additionnelle
414    <var>remplacement</var>. Depuis la version 2.4.7, la cha�ne de
415    remplacement peut aussi contenir des sp�cificateurs de format.</p>
416
417    <p>La directive <code class="directive">Header</code> peut �tre suivie d'un
418    argument additionnel qui peut prendre les valeurs suivantes :</p>
419
420    <dl>
421    <dt><code>early</code></dt>
422    <dd>Sp�cifie <a href="#early">traitement pr�alable</a>.</dd>
423    <dt><code>env=[!]<var>variable</var></code></dt>
424    <dd>La directive est appliqu�e si et seulement si la <a href="/env.html">variable d'environnement</a>
425    <code>variable</code> existe. Un <code>!</code> devant
426    <code>variable</code> inverse le test, et la directive ne
427    s'appliquera alors que si <code>variable</code> n'est pas d�finie.</dd>
428    <dt><code>expr=<var>expression</var></code></dt>
429    <dd>La directive s'applique si et seulement si <var>expression</var>
430    est �valu�e � true. Vous trouverez plus de d�tails � propos de la
431    syntaxe et de l'�valuation des expressions dans la documentation <a href="/expr.html">ap_expr</a>.</dd>
432    </dl>
433
434    <p>Except� le cas du mode <a href="#early">pr�coce</a>, les
435    directives <code class="directive">Header</code> sont trait�es juste avant
436    l'envoi de la r�ponse sur le r�seau. Cela signifie qu'il est
437    possible de d�finir et/ou modifier la plupart des en-t�tes, �
438    l'exception de ceux qui sont ajout�s par le filtre HTTP
439    d'en-t�te, comme Content-Type.</p>
440
441</div>
442<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
443<div class="directive-section"><h2><a name="RequestHeader" id="RequestHeader">RequestHeader</a> <a name="requestheader" id="requestheader">Directive</a></h2>
444<table class="directive">
445<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configure les en-t�tes d'une requ�te HTTP</td></tr>
446<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RequestHeader add|append|edit|edit*|merge|set|setifempty|unset
447<var>en-t�te</var> [<var>valeur</var>] [<var>remplacement</var>]
448[early|env=[!]<var>variable</var>]|expr=<var>expression</var>]
449</code></td></tr>
450<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire, .htaccess</td></tr>
451<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
452<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
453<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_headers</td></tr>
454<tr><th><a href="directive-dict.html#Compatibility">Compatibilit�:</a></th><td>SetIfEmpty est disponible depuis la version 2.4.7 du
455serveur HTTP Apache</td></tr>
456</table>
457    <p>Cette directive permet de remplacer, fusionner, modifier ou
458    supprimer des en-t�tes de requ�te HTTP. L'en-t�te est modifi� juste
459    avant que le gestionnaire de contenu ne s'ex�cute, ce qui permet la
460    modification des en-t�tes entrants. L'action effectu�e est
461    d�termin�e par le premier argument. Ce dernier accepte les valeurs
462    suivantes :</p>
463
464    <dl>
465
466    <dt><code>add</code></dt>
467    <dd>L'en-t�te est ajout� au jeu d'en-t�tes pr�existant, m�me s'il
468    existe d�j�. Ceci peut conduire � la pr�sence de deux (ou plusieurs)
469    en-t�tes poss�dant le m�me nom et donc induire des cons�quences
470    impr�vues ; en g�n�ral, il est pr�f�rable d'utiliser
471    <code>set</code>, <code>append</code> ou <code>merge</code>.</dd>
472
473    <dt><code>append</code></dt>
474    <dd>La valeur d'en-t�te est ajout�e � tout en-t�te existant de m�me
475    nom. Lorsqu'une nouvelle valeur est ainsi ajout�e, elle est s�par�e
476    de celles qui sont d�j� pr�sentes par une virgule. Il s'agit de la
477    m�thode HTTP standard permettant d'affecter plusieurs valeurs � un
478    en-t�te.</dd>
479
480    <dt><code>edit*</code></dt>
481    <dd>Si l'en-t�te existe, sa valeur est modifi�e en fonction d'une
482    <a class="glossarylink" href="/glossary.html#regex" title="voir glossaire">expression rationnelle</a> de type
483    recherche/remplacement. L'argument <var>valeur</var> est une
484    <a class="glossarylink" href="/glossary.html#regex" title="voir glossaire">expression rationnelle</a>, et
485    l'argument <var>remplacement</var> une cha�ne de caract�res de
486    remplacement qui peut contenir des r�f�rences
487    arri�res ou des sp�cificateurs de format. Avec
488    <code>edit</code>, la cha�ne de l'en-t�te correspondant au mod�le ne
489    sera recherch�e et remplac�e qu'une seule fois, alors qu'avec
490    <code>edit*</code>, elle le sera pour chacune de ses instances si
491    elle appara�t plusieurs fois.</dd>
492
493    <dt><code>merge</code></dt>
494    <dd>La valeur d'en-t�te est ajout�e � tout en-t�te de m�me nom, sauf
495    si elle appara�t d�j� dans la liste des valeurs pr�existantes de
496    l'en-t�te s�par�es par des virgules. Lorsqu'une nouvelle valeur est
497    ainsi ajout�e, elle est s�par�e de celles qui sont d�j� pr�sentes
498    par une virgule. Il s'agit de la m�thode HTTP standard permettant
499    d'affecter plusieurs valeurs � un en-t�te. Les valeurs sont
500    compar�es en tenant compte de la casse, et apr�s le traitement de
501    tous les sp�cificateurs de format. Une valeur entour�e de guillemets
502    est consid�r�e comme diff�rente de la m�me valeur mais sans
503    guillemets.</dd>
504
505    <dt><code>set</code></dt>
506    <dd>L'en-t�te est d�fini, rempla�ant tout en-t�te pr�existant avec
507    le m�me nom.</dd>
508
509    <dt><code>setifempty</code></dt>
510    <dd>L'en-t�te est d�fini, mais seulement s'il n'existe
511    aucun en-t�te avec le m�me nom. Disponible depuis la
512    version 2.4.7 du serveur HTTP Apache.</dd>
513
514    <dt><code>unset</code></dt>
515    <dd>L'en-t�te est supprim� s'il existe. Si plusieurs en-t�tes
516    poss�dent le m�me nom, ils seront tous supprim�s. L'argument
517    <var>value</var> ne doit pas appara�tre.</dd>
518    </dl>
519
520    <p>Cet argument est suivi d'un nom d'en-t�te qui peut se terminer
521    par un caract�re ':', mais ce n'est pas obligatoire. La casse est
522    ignor�e. Avec <code>set</code>, <code>append</code>,
523    <code>merge</code> et <code>add</code>, une <var>valeur</var> est
524    fournie en troisi�me argument. Si une <var>valeur</var> contient des
525    espaces, elle doit �tre entour�e de guillemets. Avec
526    <code>unset</code>, aucune <var>valeur</var> ne doit appara�tre.
527    <var>valeur</var> peut �tre une cha�ne de caract�res, une cha�ne
528    contenant des sp�cificateurs de format, ou une combinaison des deux.
529    Les sp�cificateurs de format support�s sont les m�mes que ceux de la
530    directive <code class="directive"><a href="#header">Header</a></code>, �
531    laquelle vous pouvez vous reporter pour plus de d�tails. Avec
532    <code>edit</code>, les deux arguments <var>valeur</var> et
533    <var>remplacement</var> sont obligatoires, et correspondent
534    respectivement � une <a class="glossarylink" href="/glossary.html#regex" title="voir glossaire">expression
535    rationnelle</a> et � une cha�ne de remplacement.</p>
536
537    <p>La directive <code class="directive">RequestHeader</code> peut �tre
538    suivie d'un argument suppl�mentaire, qui pourra prendre les valeurs
539    suivantes :</p>
540    <dl>
541    <dt><code>early</code></dt>
542    <dd>Sp�cifie <a href="#early">traitement pr�alable</a>.</dd>
543    <dt><code>env=[!]<var>variable</var></code></dt>
544    <dd>La directive est appliqu�e si et seulement si la <a href="/env.html">variable d'environnement</a>
545    <code>variable</code> existe. Un <code>!</code> devant
546    <code>variable</code> inverse le test, et la directive ne
547    s'appliquera alors que si <code>variable</code> n'est pas d�finie.</dd>
548    <dt><code>expr=<var>expression</var></code></dt>
549    <dd>La directive s'applique si et seulement si <var>expression</var>
550    est �valu�e � true. Vous trouverez plus de d�tails � propos de la
551    syntaxe et de l'�valuation des expressions dans la documentation <a href="/expr.html">ap_expr</a>.</dd>
552    </dl>
553
554    <p>Except� le cas du mode <a href="#early">pr�coce</a>, la directive
555    <code class="directive">RequestHeader</code> est trait�e juste avant la
556    prise en compte de la requ�te par son gestionnaire, au cours de la
557    phase de v�rification. Ceci permet la modification des en-t�tes
558    g�n�r�s par le navigateur, ou par les filtres en entr�e
559    d'Apache.</p>
560
561</div>
562</div>
563<div class="bottomlang">
564<p><span>Langues Disponibles: </span><a href="/en/mod/mod_headers.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
565<a href="/fr/mod/mod_headers.html" title="Fran�ais">&nbsp;fr&nbsp;</a> |
566<a href="/ja/mod/mod_headers.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
567<a href="/ko/mod/mod_headers.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
568</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>
569<script type="text/javascript"><!--//--><![CDATA[//><!--
570var comments_shortname = 'httpd';
571var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_headers.html';
572(function(w, d) {
573    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
574        d.write('<div id="comments_thread"><\/div>');
575        var s = d.createElement('script');
576        s.type = 'text/javascript';
577        s.async = true;
578        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
579        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
580    }
581    else { 
582        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
583    }
584})(window, document);
585//--><!]]></script></div><div id="footer">
586<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>
587<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.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[//><!--
588if (typeof(prettyPrint) !== 'undefined') {
589    prettyPrint();
590}
591//--><!]]></script>
592</body></html>