mirror of
				https://github.com/apache/httpd.git
				synced 2025-10-30 08:05:39 +03:00 
			
		
		
		
	git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1536311 13f79535-47bb-0310-9956-ffa450edef68
		
			
				
	
	
		
			604 lines
		
	
	
		
			31 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			604 lines
		
	
	
		
			31 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| <?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_headers - Serveur Apache HTTP</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.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_headers</h1>
 | ||
| <div class="toplang">
 | ||
| <p><span>Langues Disponibles: </span><a href="../en/mod/mod_headers.html" hreflang="en" rel="alternate" title="English"> en </a> |
 | ||
| <a href="../fr/mod/mod_headers.html" title="Fran<61>ais"> fr </a> |
 | ||
| <a href="../ja/mod/mod_headers.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
 | ||
| <a href="../ko/mod/mod_headers.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
 | ||
| </div>
 | ||
| <div class="outofdate">Cette traduction peut <20>tre p<>rim<69>e. V<>rifiez la version
 | ||
|             anglaise pour les changements r<>cents.</div>
 | ||
| <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Personnalisation des en-t<>tes de requ<71>tes et de r<>ponses
 | ||
| HTTP</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<75>de<64>Module:</a></th><td>headers_module</td></tr>
 | ||
| <tr><th><a href="module-dict.html#SourceFile">Fichier<65>Source:</a></th><td>mod_headers.c</td></tr></table>
 | ||
| <h3>Sommaire</h3>
 | ||
| 
 | ||
|     <p>Ce module fournit des directives permettant de contr<74>ler et
 | ||
|     modifier les en-t<>tes de requ<71>tes et de r<>ponses HTTP. Les en-t<>tes
 | ||
|     peuvent <20>tre fusionn<6E>s, remplac<61>s ou supprim<69>s.</p>
 | ||
| </div>
 | ||
| <div id="quickview"><h3 class="directives">Directives</h3>
 | ||
| <ul id="toc">
 | ||
| <li><img alt="" src="../images/down.gif" /> <a href="#header">Header</a></li>
 | ||
| <li><img alt="" src="../images/down.gif" /> <a href="#requestheader">RequestHeader</a></li>
 | ||
| </ul>
 | ||
| <h3>Sujets</h3>
 | ||
| <ul id="topics">
 | ||
| <li><img alt="" src="../images/down.gif" /> <a href="#order">Chronologie du traitement</a></li>
 | ||
| <li><img alt="" src="../images/down.gif" /> <a href="#early">Traitement pr<70>coce et traitement
 | ||
| tardif</a></li>
 | ||
| <li><img alt="" src="../images/down.gif" /> <a href="#examples">Exemples</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="order" id="order">Chronologie du traitement</a></h2>
 | ||
| 
 | ||
|     <p>Les directives fournies par <code class="module"><a href="../mod/mod_headers.html">mod_headers</a></code> peuvent
 | ||
|     s'ins<6E>rer presque partout dans la configuration du serveur, et on
 | ||
|     peut limiter leur port<72>e en les pla<6C>ant dans des <a href="../sections.html">sections de configuration</a>.</p>
 | ||
| 
 | ||
|     <p>La chronologie du traitement est importante et est affect<63>e par
 | ||
|     l'ordre d'apparition des directives dans le fichier de configuration
 | ||
|     et par leur placement dans les <a href="../sections.html#mergin">sections de configuration</a>. Ainsi,
 | ||
|     ces deux directives ont un effet diff<66>rent si leur ordre est invers<72>
 | ||
|     :</p>
 | ||
| 
 | ||
|     <pre class="prettyprint lang-config">
 | ||
| RequestHeader append MirrorID "mirror 12"
 | ||
| RequestHeader unset MirrorID
 | ||
|     </pre>
 | ||
| 
 | ||
| 
 | ||
|     <p>Dans cet ordre, l'en-t<>te <code>MirrorID</code> n'est pas d<>fini.
 | ||
|     Si l'ordre des directives <20>tait invers<72>, l'en-t<>te
 | ||
|     <code>MirrorID</code> serait d<>fini <20> "mirror 12".</p>
 | ||
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 | ||
| <div class="section">
 | ||
| <h2><a name="early" id="early">Traitement pr<70>coce et traitement
 | ||
| tardif</a></h2>
 | ||
|     <p><code class="module"><a href="../mod/mod_headers.html">mod_headers</a></code> peut agir soir pr<70>cocement, soit
 | ||
|     tardivement au niveau de la requ<71>te. Le mode normal est le mode
 | ||
|     tardif, lorsque les en-t<>tes de <em>requ<71>te</em> sont d<>finis, imm<6D>diatement
 | ||
|     avant l'ex<65>cution du g<>n<EFBFBD>rateur de contenu, et pour les en-t<>tes de
 | ||
|     <em>r<>ponse</em>, juste au moment o<> la r<>ponse est envoy<6F>e sur le r<>seau.
 | ||
|     Utilisez toujours le mode tardif sur un serveur en production.</p>
 | ||
| 
 | ||
|     <p>Le mode pr<70>coce a <20>t<EFBFBD> con<6F>u <20> des fins d'aide aux tests et au
 | ||
|     d<>bogage pour les d<>veloppeurs. Les directives d<>finies en utilisant
 | ||
|     le mot-cl<63> <code>early</code> sont cens<6E>es agir au tout d<>but du
 | ||
|     traitement de la requ<71>te. Cela signifie que l'on peut les utiliser
 | ||
|     pour simuler diff<66>rentes requ<71>tes et d<>finir des situations de test,
 | ||
|     tout en gardant <20> l'esprit que les en-t<>tes peuvent <20>tre modifi<66>s <20>
 | ||
|     tout moment par d'autres modules avant que le r<>ponse ne soit
 | ||
|     g<>n<EFBFBD>r<EFBFBD>e.</p>
 | ||
| 
 | ||
|     <p>Comme les directives pr<70>coces sont trait<69>es avant que le
 | ||
|     chemin de la requ<71>te ne soit parcouru, les en-t<>tes
 | ||
|     pr<70>coces ne peuvent <20>tre d<>finis que dans un contexte de serveur
 | ||
|     principal ou de serveur virtuel. Les directives pr<70>coces ne peuvent
 | ||
|     pas d<>pendre d'un chemin de requ<71>te, si bien qu'elles <20>choueront
 | ||
|     dans des contextes tels que <code><Directory></code> ou
 | ||
|     <code><Location></code>.</p>
 | ||
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 | ||
| <div class="section">
 | ||
| <h2><a name="examples" id="examples">Exemples</a></h2>
 | ||
| 
 | ||
|     <ol>
 | ||
|       <li>
 | ||
|         Copie tous les en-t<>tes de requ<71>te qui commencent par "TS" vers
 | ||
| 	les en-t<>tes de la r<>ponse :
 | ||
| 
 | ||
|         <pre class="prettyprint lang-config">
 | ||
|           Header echo ^TS
 | ||
|         </pre>
 | ||
| 
 | ||
|       </li>
 | ||
| 
 | ||
|       <li>
 | ||
|         Ajoute <20> la r<>ponse un en-t<>te, <code>mon-en-t<>te</code>, qui
 | ||
| 	contient un horodatage permettant de d<>terminer le moment o<> la
 | ||
| 	requ<71>te a <20>t<EFBFBD> re<72>ue, et le temps qui s'est <20>coul<75> jusqu'<27> ce que
 | ||
| 	la requ<71>te ait commenc<6E> <20> <20>tre servie. Cet en-t<>te peut <20>tre
 | ||
| 	utilis<69> par le client pour estimer la charge du serveur ou
 | ||
| 	isoler les goulets d'<27>tranglement entre le client et le
 | ||
| 	serveur.
 | ||
| 
 | ||
|         <pre class="prettyprint lang-config">
 | ||
|           Header set mon-en-t<>te "%D %t"
 | ||
|         </pre>
 | ||
| 
 | ||
| 
 | ||
|         <p>le r<>sultat est l'ajout <20> la r<>ponse d'un en-t<>te du type :</p>
 | ||
| 
 | ||
|         <div class="example"><p><code>
 | ||
|           mon-en-t<>te: D=3775428 t=991424704447256
 | ||
|         </code></p></div>
 | ||
|       </li>
 | ||
| 
 | ||
|       <li>
 | ||
|         Dit Bonjour <20> Joe
 | ||
| 
 | ||
|         <div class="example"><p><code>
 | ||
|           Header set mon-en-t<>te "Bonjour Joe. Il a fallu %D microsecondes \<br />
 | ||
|           <20> Apache pour servir cette requ<71>te."
 | ||
|         </code></p></div>
 | ||
| 
 | ||
|         <p>le r<>sultat est l'ajout <20> la r<>ponse d'un en-t<>te du type :</p>
 | ||
| 
 | ||
|         <pre class="prettyprint lang-config">
 | ||
| 	Header set MyHeader "Bonjour Joe. Il a fallu D=3775428 microsecondes <20> Apache
 | ||
|           pour servir cette requ<71>te."
 | ||
|         </pre>
 | ||
| 
 | ||
|       </li>
 | ||
| 
 | ||
|       <li>
 | ||
|         Ajoute l'en-t<>te <code>mon-en-t<>te</code> <20> la r<>ponse si et
 | ||
| 	seulement si l'en-t<>te <code>mon-en-t<>te-requ<71>te</code> est
 | ||
| 	pr<70>sent dans la requ<71>te. Ceci peut s'av<61>rer utile pour g<>n<EFBFBD>rer
 | ||
| 	des en-t<>tes de r<>ponse "<22> la t<>te du client". Notez que cet
 | ||
| 	exemple n<>cessite les services du module
 | ||
| 	<code class="module"><a href="../mod/mod_setenvif.html">mod_setenvif</a></code>.
 | ||
| 
 | ||
|         <pre class="prettyprint lang-config">
 | ||
| SetEnvIf MyRequestHeader myvalue HAVE_MyRequestHeader
 | ||
| Header set MyHeader "%D %t mytext" env=HAVE_MyRequestHeader
 | ||
|         </pre>
 | ||
| 
 | ||
| 
 | ||
|         <p>Si l'en-t<>te <code>mon-en-t<>te-requ<71>te: mavaleur</code> est
 | ||
| 	pr<70>sent dans la requ<71>te HTTP, la r<>ponse contiendra un en-t<>te
 | ||
| 	du type :</p>
 | ||
| 
 | ||
|         <div class="example"><p><code>
 | ||
|           mon-en-t<>te: D=3775428 t=991424704447256 montexte
 | ||
|         </code></p></div>
 | ||
|       </li>
 | ||
| 
 | ||
|       <li>
 | ||
|         Permet <20> DAV de fonctionner avec Apache sur SSL (voir la <a href="http://svn.haxx.se/users/archive-2006-03/0549.shtml">description
 | ||
| 	du probl<62>me</a>) en rempla<6C>ant <var>https:</var> par
 | ||
| 	<var>http:</var> dans l'en-t<>te <var>Destination</var> :
 | ||
| 
 | ||
|         <pre class="prettyprint lang-config">
 | ||
|           RequestHeader edit Destination ^https: http: early
 | ||
|         </pre>
 | ||
| 
 | ||
|       </li>
 | ||
| 
 | ||
|       <li>
 | ||
|         D<>finit la valeur d'un m<>me en-t<>te sous de multiples conditions
 | ||
| 	non exclusives, mais ne duplique pas une valeur d<>j<EFBFBD> d<>finie
 | ||
| 	dans l'en-t<>te qui en r<>sulte. Si toutes les conditions
 | ||
| 	suivantes sont satisfaites pour une requ<71>te (en d'autres termes,
 | ||
| 	si les trois variables d'environnement <code>CGI</code>,
 | ||
| 	<code>NO_CACHE</code> et <code>NO_STORE</code> existent pour la
 | ||
| 	requ<71>te) :
 | ||
| 
 | ||
|         <pre class="prettyprint lang-config">
 | ||
| Header merge Cache-Control no-cache env=CGI
 | ||
| Header merge Cache-Control no-cache env=NO_CACHE
 | ||
| Header merge Cache-Control no-store env=NO_STORE
 | ||
|         </pre>
 | ||
| 
 | ||
| 
 | ||
|         <p>alors, la r<>ponse contiendra l'en-t<>te suivant :</p>
 | ||
| 
 | ||
|         <div class="example"><p><code>
 | ||
|           Cache-Control: no-cache, no-store
 | ||
|         </code></p></div>
 | ||
| 
 | ||
|         <p>Si <code>append</code> avait <20>t<EFBFBD> utilis<69> <20> la place de
 | ||
| 	<code>merge</code>, la r<>ponse aurait contenu l'en-t<>te suivant
 | ||
| 	:</p>
 | ||
| 
 | ||
|         <div class="example"><p><code>
 | ||
|           Cache-Control: no-cache, no-cache, no-store
 | ||
|         </code></p></div>
 | ||
|       </li>
 | ||
|       <li>
 | ||
|         D<>finit un cookie de test si et seulement si le client n'envoie
 | ||
| 	pas de cookie
 | ||
|         <pre class="prettyprint lang-config">
 | ||
|           Header set Set-Cookie testcookie "expr=-z %{req:Cookie}"
 | ||
|         </pre>
 | ||
| 
 | ||
|       </li>
 | ||
|     </ol>
 | ||
| </div>
 | ||
| <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 | ||
| <div class="directive-section"><h2><a name="Header" id="Header">Header</a> <a name="header" id="header">Directive</a></h2>
 | ||
| <table class="directive">
 | ||
| <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configure les en-t<>tes d'une r<>ponse HTTP</td></tr>
 | ||
| <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Header [<var>condition</var>] add|append|echo|edit|edit*|merge|set|unset|note
 | ||
| <var>en-t<>te</var> [<var>valeur</var>] [<var>remplacement</var>]
 | ||
| [early|env=[!]<var>variable</var>]|expr=<var>expression</var>]
 | ||
| </code></td></tr>
 | ||
| <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r<>pertoire, .htaccess</td></tr>
 | ||
| <tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</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_headers</td></tr>
 | ||
| <tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>La condition par d<>faut est temporairement pass<73>e
 | ||
| <EFBFBD> "always" dans les version 2.3.9 et 2.3.10</td></tr>
 | ||
| </table>
 | ||
|     <p>Cette directive permet de remplacer, fusionner, ou
 | ||
|     supprimer des en-t<>tes de r<>ponse HTTP. L'en-t<>te est modifi<66> juste
 | ||
|     apr<70>s que le gestionnaire de contenu et les filtres en sortie ne
 | ||
|     s'ex<65>cutent, ce qui permet la modification des en-t<>tes
 | ||
|     sortants.</p>
 | ||
| 
 | ||
|     <p>L'argument optionnel <var>condition</var> permet de d<>terminer
 | ||
|     sur quelle table interne d'en-t<>tes de r<>ponses cette directive va
 | ||
|     op<6F>rer. D'autres composants du serveur peuvent avoir stock<63> leurs
 | ||
|     en-t<>tes de r<>ponses dans la table correspondant <20>
 | ||
|     <code>onsuccess</code> ou dans celle correspondant <20>
 | ||
|     <code>always</code>. Dans ce contexte, "Always" fait r<>f<EFBFBD>rence au
 | ||
|     choix d'envoyer les en-t<>tes que vous ajoutez aux r<>ponses, qu'elle
 | ||
|     soient avec succ<63>s ou <20>chou<6F>es ; par contre, si votre action est une
 | ||
|     fonction d'un en-t<>te existant, vous devrez lire la documentation de
 | ||
|     mani<6E>re plus approfondie car dans ce cas, les choses se compliquent.</p>
 | ||
| 
 | ||
|     <p>Vous pouvez avoir <20> changer la valeur par d<>faut
 | ||
|     <code>onsuccess</code> en <code>always</code> dans des circonstances
 | ||
|     similaires <20> celles expos<6F>es plus loin. Notez aussi que la r<>p<EFBFBD>tition
 | ||
|     de cette directive avec les deux conditions peut <20>tre pertinente
 | ||
|     dans certains sc<73>narios, car <code>always</code> n'englobe pas
 | ||
|     <code>onsuccess</code> en ce qui concerne les en-t<>tes existants :</p>
 | ||
| 
 | ||
|     <ul>
 | ||
|        <li>Vous ajoutez un en-t<>te <20> une r<>ponse <20>chou<6F>e (non-2xx),
 | ||
|        une redirection par exemple, et dans ce cas, seule la table
 | ||
|        correspondant <20> <code>always</code> est utilis<69>e dans la r<>ponse
 | ||
|        d<>finitive.</li>
 | ||
|        <li>Vous modifiez ou supprimez un en-t<>te g<>n<EFBFBD>r<EFBFBD> par un script
 | ||
|        CGI, et dans ce cas, les scripts CGI sont dans la table
 | ||
|        correspondant <20> <code>always</code> et non dans la table par
 | ||
|        d<>faut.</li>
 | ||
|        <li>Vous modifiez ou supprimez un en-t<>te g<>n<EFBFBD>r<EFBFBD> par tel ou tel
 | ||
|        composant du serveur, mais cet en-t<>te n'est pas trouv<75> par la
 | ||
|        condition par d<>faut <code>onsuccess</code>.</li>
 | ||
|     </ul>
 | ||
| 
 | ||
|     <p>L'action que cette directive provoque est d<>termin<69>e par le
 | ||
|     premier argument (ou par le second argument si une
 | ||
|     <var>condition</var> est sp<73>cifi<66>e). Il peut prendre
 | ||
|     une des valeurs suivantes :</p>
 | ||
| 
 | ||
|     <dl>
 | ||
|     <dt><code>add</code></dt>
 | ||
|     <dd>L'en-t<>te est ajout<75> au jeu d'en-t<>tes pr<70>existant, m<>me s'il
 | ||
|     existe d<>j<EFBFBD>. Ceci peut conduire <20> la pr<70>sence de deux (ou plusieurs)
 | ||
|     en-t<>tes poss<73>dant le m<>me nom et donc induire des cons<6E>quences
 | ||
|     impr<70>vues ; en g<>n<EFBFBD>ral, il est pr<70>f<EFBFBD>rable d'utiliser
 | ||
|     <code>set</code>, <code>append</code> ou <code>merge</code>.</dd>
 | ||
| 
 | ||
|     <dt><code>append</code></dt>
 | ||
|     <dd>La valeur d'en-t<>te est ajout<75>e <20> tout en-t<>te existant de m<>me
 | ||
|     nom. Lorsqu'une nouvelle valeur est ainsi ajout<75>e, elle est s<>par<61>e
 | ||
|     de celles qui sont d<>j<EFBFBD> pr<70>sentes par une virgule. Il s'agit de la
 | ||
|     m<>thode HTTP standard permettant d'affecter plusieurs valeurs <20> un
 | ||
|     en-t<>te.</dd>
 | ||
| 
 | ||
|     <dt><code>echo</code></dt>
 | ||
|     <dd>Les en-t<>tes de la requ<71>te poss<73>dant le nom sp<73>cifi<66> sont
 | ||
|     recopi<70>s vers les en-t<>tes de la r<>ponse. <var>en-t<>te</var> peut
 | ||
|     <20>tre une <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression rationnelle</a>, et
 | ||
|     <var>valeur</var> ne doit pas <20>tre pr<70>sent.</dd>
 | ||
| 
 | ||
|     <dt><code>edit</code></dt>
 | ||
|     <dt><code>edit*</code></dt>
 | ||
|     <dd>Si l'en-t<>te existe, sa valeur est modifi<66>e en fonction d'une
 | ||
|     <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression rationnelle</a> de type
 | ||
|     recherche/remplacement. L'argument <var>valeur</var> est une
 | ||
|     <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression rationnelle</a>, et
 | ||
|     l'argument <var>remplacement</var> une cha<68>ne de caract<63>res de
 | ||
|     remplacement qui peut contenir des r<>f<EFBFBD>rences
 | ||
|     arri<72>res ou des sp<73>cificateurs de format. La forme <code>edit</code> n'effectuera une
 | ||
|     recherche/remplacement qu'une seule fois dans la valeur de
 | ||
|     l'en-t<>te, alors que la forme <code>edit*</code> en effectuera autant
 | ||
|     que le nombre d'apparition de la cha<68>ne <20> remplacer.</dd>
 | ||
| 
 | ||
|     <dt><code>merge</code></dt>
 | ||
|     <dd>La valeur d'en-t<>te est ajout<75>e <20> tout en-t<>te de m<>me nom, sauf
 | ||
|     si elle appara<72>t d<>j<EFBFBD> dans la liste des valeurs pr<70>existantes de
 | ||
|     l'en-t<>te s<>par<61>es par des virgules. Lorsqu'une nouvelle valeur est
 | ||
|     ainsi ajout<75>e, elle est s<>par<61>e de celles qui sont d<>j<EFBFBD> pr<70>sentes
 | ||
|     par une virgule. Il s'agit de la m<>thode HTTP standard permettant
 | ||
|     d'affecter plusieurs valeurs <20> un en-t<>te. Les valeurs sont
 | ||
|     compar<61>es en tenant compte de la casse, et apr<70>s le traitement de
 | ||
|     tous les sp<73>cificateurs de format. Une valeur entour<75>e de guillemets
 | ||
|     est consid<69>r<EFBFBD>e comme diff<66>rente de la m<>me valeur mais sans
 | ||
|     guillemets.</dd>
 | ||
| 
 | ||
|     <dt><code>set</code></dt>
 | ||
|     <dd>L'en-t<>te est d<>fini, rempla<6C>ant tout en-t<>te pr<70>existant avec
 | ||
|     le m<>me nom. L'argument <var>valeur</var> peut <20>tre une cha<68>ne de
 | ||
|     formatage.</dd>
 | ||
| 
 | ||
|     <dt><code>setifempty</code></dt>
 | ||
|     <dd>L'en-t<>te est d<>fini, mais seulement s'il n'existe
 | ||
|     aucun en-t<>te avec le m<>me nom.</dd>
 | ||
| 
 | ||
|     <dt><code>unset</code></dt>
 | ||
|     <dd>L'en-t<>te est supprim<69> s'il existe. Si plusieurs en-t<>tes
 | ||
|     poss<73>dent le m<>me nom, ils seront tous supprim<69>s. L'argument
 | ||
|     <var>value</var> ne doit pas appara<72>tre.</dd>
 | ||
| 
 | ||
|     <dt><code>note</code></dt>
 | ||
|     <dd>La valeur de l'<var>en-t<>te</var> consid<69>r<EFBFBD> est copi<70>e dans une
 | ||
|     note interne dont le nom est sp<73>cifi<66> via l'argument
 | ||
|     <var>valeur</var>. Ceci permet d'enregistrer la valeur d'un en-t<>te
 | ||
|     envoy<6F> par un programme CGI ou une ressource mandat<61>e, m<>me s'il
 | ||
|     est pr<70>vu de l'effacer.</dd>
 | ||
| 
 | ||
|     </dl>    
 | ||
| 
 | ||
|     <p>Cet argument est suivi d'un nom d'<var>en-t<>te</var> qui peut se
 | ||
|     terminer par un caract<63>re ':', mais ce n'est pas obligatoire. La
 | ||
|     casse est ignor<6F>e avec <code>set</code>, <code>append</code>,
 | ||
|     <code>merge</code>, <code>add</code>, <code>unset</code> et
 | ||
|     <code>edit</code>. Le nom d'<var>en-t<>te</var> est sensible <20> la
 | ||
|     casse pour <code>echo</code> et peut <20>tre une <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression rationnelle</a>.</p>
 | ||
| 
 | ||
|     <p>Avec <code>set</code>, <code>append</code>, <code>merge</code> et
 | ||
|     <code>add</code>, une <var>valeur</var> est sp<73>cifi<66>e comme
 | ||
|     argument suivant. Si <var>valeur</var> contient des espaces, elle
 | ||
|     doit <20>tre entour<75>e de guillemets. <var>valeur</var> peut <20>tre une
 | ||
|     cha<68>ne de caract<63>res, une cha<68>ne contenant des sp<73>cificateurs de
 | ||
|     format, ou une combinaison des deux. <var>valeur</var> supporte les
 | ||
|     sp<73>cificateurs de format suivants :</p>
 | ||
| 
 | ||
|     <table class="bordered"><tr class="header"><th>Format</th><th>Description</th></tr>
 | ||
| <tr><td><code>%%</code></td>
 | ||
|         <td>Le caract<63>re pourcentage</td></tr>
 | ||
| <tr class="odd"><td><code>%t</code></td>
 | ||
|         <td>Le moment de r<>ception de la requ<71>te en temps
 | ||
| 	universel coordonn<6E> depuis le temps epoch (Jan. 1, 1970) et
 | ||
| 	exprim<69> en microsecondes. La valeur est pr<70>c<EFBFBD>d<EFBFBD>e de
 | ||
| 	<code>t=</code>.</td></tr>
 | ||
| <tr><td><code>%D</code></td>
 | ||
|         <td>Le temps <20>coul<75> entre la r<>ception de la requ<71>te et l'envoi
 | ||
| 	des en-t<>tes sur le r<>seau. Il s'agit de la dur<75>e de traitement
 | ||
| 	de la requ<71>te. La valeur est pr<70>c<EFBFBD>d<EFBFBD>e de <code>D=</code>. La
 | ||
| 	valeur est exprim<69>e en microsecondes.</td></tr>
 | ||
| <tr class="odd"><td><code>%l</code></td>
 | ||
|         <td>La charge moyenne courante du serveur proprement dit. Ce
 | ||
| 	sont les valeurs obtenues par <code>getloadavg()</code> qui
 | ||
| 	repr<70>sentent la charge moyenne courante, sur 5 minutes et sur 15
 | ||
| 	minutes. Chaque valeur est pr<70>c<EFBFBD>d<EFBFBD>e de <code>l=</code> et
 | ||
| 	s<>par<61>e de la suivante par un <code>/</code>.
 | ||
|         </td></tr>
 | ||
| <tr><td><code>%i</code></td>
 | ||
|         <td>Le pourcentage courant de httpd au repos (de 0 <20> 100)
 | ||
| 	en se basant sur le nombre de processus et threads disponibles.
 | ||
| 	La valeur est pr<70>c<EFBFBD>d<EFBFBD>e de <code>i=</code>.
 | ||
|         </td></tr>
 | ||
| <tr class="odd"><td><code>%b</code></td>
 | ||
|         <td>Le pourcentage courant de httpd utilis<69> (de 0 <20> 100)
 | ||
| 	en se basant sur le nombre de processus et threads disponibles.
 | ||
| 	La valeur est pr<70>c<EFBFBD>d<EFBFBD>e de <code>b=</code>.
 | ||
|         </td></tr>
 | ||
| <tr><td><code>%{NOM_VARIABLE}e</code></td>
 | ||
|         <td>Le contenu de la <a href="../env.html">variable
 | ||
| 	d'environnement</a> <code>NOM_VARIABLE</code>.</td></tr>
 | ||
| <tr class="odd"><td><code>%{NOM_VARIABLE}s</code></td>
 | ||
|         <td>Le contenu de la <a href="../env.html">variable
 | ||
| 	d'environnement SSL</a> <code>NOM_VARIABLE</code>, si
 | ||
| 	<code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> est activ<69>.</td></tr>
 | ||
| </table>
 | ||
| 
 | ||
|     <div class="note"><h3>Note</h3>
 | ||
|       <p>Le sp<73>cificateur de format <code>%s</code> est disponible
 | ||
|       depuis la version 2.1 d'Apache ; il peut <20>tre utilis<69> <20> la place
 | ||
|       de <code>%e</code> pour <20>viter de devoir sp<73>cifier
 | ||
|       <code>SSLOptions +StdEnvVars</code>. Cependant, si
 | ||
|       <code>SSLOptions +StdEnvVars</code> doit tout de m<>me <20>tre
 | ||
|       sp<73>cifi<66> pour une raison quelconque, <code>%e</code> sera plus
 | ||
|       efficace que <code>%s</code>.</p>
 | ||
|     </div>
 | ||
| 
 | ||
|     <p><code>edit</code>n<>cessite les deux arguments
 | ||
|     <var>valeur</var>, qui est une <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression
 | ||
|     rationnelle</a>, et une cha<68>ne additionnelle
 | ||
|     <var>remplacement</var>. La cha<68>ne de remplacement peut aussi
 | ||
|     contenir des sp<73>cificateurs de format.</p>
 | ||
| 
 | ||
|     <p>La directive <code class="directive">Header</code> peut <20>tre suivie d'un
 | ||
|     argument additionnel qui peut prendre les valeurs suivantes :</p>
 | ||
| 
 | ||
|     <dl>
 | ||
|     <dt><code>early</code></dt>
 | ||
|     <dd>Sp<53>cifie <a href="#early">traitement pr<70>alable</a>.</dd>
 | ||
|     <dt><code>env=[!]<var>variable</var></code></dt>
 | ||
|     <dd>La directive est appliqu<71>e si et seulement si la <a href="../env.html">variable d'environnement</a>
 | ||
|     <code>variable</code> existe. Un <code>!</code> devant
 | ||
|     <code>variable</code> inverse le test, et la directive ne
 | ||
|     s'appliquera alors que si <code>variable</code> n'est pas d<>finie.</dd>
 | ||
|     <dt><code>expr=<var>expression</var></code></dt>
 | ||
|     <dd>La directive s'applique si et seulement si <var>expression</var>
 | ||
|     est <20>valu<6C>e <20> true. Vous trouverez plus de d<>tails <20> propos de la
 | ||
|     syntaxe et de l'<27>valuation des expressions dans la documentation <a href="../expr.html">ap_expr</a>.</dd>
 | ||
|     </dl>
 | ||
| 
 | ||
|     <p>Except<70> le cas du mode <a href="#early">pr<70>coce</a>, les
 | ||
|     directives <code class="directive">Header</code> sont trait<69>es juste avant
 | ||
|     l'envoi de la r<>ponse sur le r<>seau. Cela signifie qu'il est
 | ||
|     possible de d<>finir et/ou modifier la plupart des en-t<>tes, <20>
 | ||
|     l'exception de ceux qui sont ajout<75>s par le filtre HTTP
 | ||
|     d'en-t<>te, comme Content-Type.</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="RequestHeader" id="RequestHeader">RequestHeader</a> <a name="requestheader" id="requestheader">Directive</a></h2>
 | ||
| <table class="directive">
 | ||
| <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configure les en-t<>tes d'une requ<71>te HTTP</td></tr>
 | ||
| <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RequestHeader add|append|edit|edit*|merge|set|unset
 | ||
| <var>en-t<>te</var> [<var>valeur</var>] [<var>remplacement</var>]
 | ||
| [early|env=[!]<var>variable</var>]|expr=<var>expression</var>]
 | ||
| </code></td></tr>
 | ||
| <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r<>pertoire, .htaccess</td></tr>
 | ||
| <tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</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_headers</td></tr>
 | ||
| </table>
 | ||
|     <p>Cette directive permet de remplacer, fusionner, modifier ou
 | ||
|     supprimer des en-t<>tes de requ<71>te HTTP. L'en-t<>te est modifi<66> juste
 | ||
|     avant que le gestionnaire de contenu ne s'ex<65>cute, ce qui permet la
 | ||
|     modification des en-t<>tes entrants. L'action effectu<74>e est
 | ||
|     d<>termin<69>e par le premier argument. Ce dernier accepte les valeurs
 | ||
|     suivantes :</p>
 | ||
| 
 | ||
|     <dl>
 | ||
| 
 | ||
|     <dt><code>add</code></dt>
 | ||
|     <dd>L'en-t<>te est ajout<75> au jeu d'en-t<>tes pr<70>existant, m<>me s'il
 | ||
|     existe d<>j<EFBFBD>. Ceci peut conduire <20> la pr<70>sence de deux (ou plusieurs)
 | ||
|     en-t<>tes poss<73>dant le m<>me nom et donc induire des cons<6E>quences
 | ||
|     impr<70>vues ; en g<>n<EFBFBD>ral, il est pr<70>f<EFBFBD>rable d'utiliser
 | ||
|     <code>set</code>, <code>append</code> ou <code>merge</code>.</dd>
 | ||
| 
 | ||
|     <dt><code>append</code></dt>
 | ||
|     <dd>La valeur d'en-t<>te est ajout<75>e <20> tout en-t<>te existant de m<>me
 | ||
|     nom. Lorsqu'une nouvelle valeur est ainsi ajout<75>e, elle est s<>par<61>e
 | ||
|     de celles qui sont d<>j<EFBFBD> pr<70>sentes par une virgule. Il s'agit de la
 | ||
|     m<>thode HTTP standard permettant d'affecter plusieurs valeurs <20> un
 | ||
|     en-t<>te.</dd>
 | ||
| 
 | ||
|     <dt><code>edit</code></dt>
 | ||
|     <dt><code>edit*</code></dt>
 | ||
|     <dd>Si l'en-t<>te existe, sa valeur est modifi<66>e en fonction d'une
 | ||
|     <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression rationnelle</a> de type
 | ||
|     recherche/remplacement. L'argument <var>valeur</var> est une
 | ||
|     <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression rationnelle</a>, et
 | ||
|     l'argument <var>remplacement</var> une cha<68>ne de caract<63>res de
 | ||
|     remplacement qui peut contenir des r<>f<EFBFBD>rences
 | ||
|     arri<72>res ou des sp<73>cificateurs de format. Avec
 | ||
|     <code>edit</code>, la cha<68>ne de l'en-t<>te correspondant au mod<6F>le ne
 | ||
|     sera recherch<63>e et remplac<61>e qu'une seule fois, alors qu'avec
 | ||
|     <code>edit*</code>, elle le sera pour chacune de ses instances si
 | ||
|     elle appara<72>t plusieurs fois.</dd>
 | ||
| 
 | ||
|     <dt><code>merge</code></dt>
 | ||
|     <dd>La valeur d'en-t<>te est ajout<75>e <20> tout en-t<>te de m<>me nom, sauf
 | ||
|     si elle appara<72>t d<>j<EFBFBD> dans la liste des valeurs pr<70>existantes de
 | ||
|     l'en-t<>te s<>par<61>es par des virgules. Lorsqu'une nouvelle valeur est
 | ||
|     ainsi ajout<75>e, elle est s<>par<61>e de celles qui sont d<>j<EFBFBD> pr<70>sentes
 | ||
|     par une virgule. Il s'agit de la m<>thode HTTP standard permettant
 | ||
|     d'affecter plusieurs valeurs <20> un en-t<>te. Les valeurs sont
 | ||
|     compar<61>es en tenant compte de la casse, et apr<70>s le traitement de
 | ||
|     tous les sp<73>cificateurs de format. Une valeur entour<75>e de guillemets
 | ||
|     est consid<69>r<EFBFBD>e comme diff<66>rente de la m<>me valeur mais sans
 | ||
|     guillemets.</dd>
 | ||
| 
 | ||
|     <dt><code>set</code></dt>
 | ||
|     <dd>L'en-t<>te est d<>fini, rempla<6C>ant tout en-t<>te pr<70>existant avec
 | ||
|     le m<>me nom.</dd>
 | ||
| 
 | ||
|     <dt><code>setifempty</code></dt>
 | ||
|     <dd>L'en-t<>te est d<>fini, mais seulement s'il n'existe
 | ||
|     aucun en-t<>te avec le m<>me nom.</dd>
 | ||
| 
 | ||
|     <dt><code>unset</code></dt>
 | ||
|     <dd>L'en-t<>te est supprim<69> s'il existe. Si plusieurs en-t<>tes
 | ||
|     poss<73>dent le m<>me nom, ils seront tous supprim<69>s. L'argument
 | ||
|     <var>value</var> ne doit pas appara<72>tre.</dd>
 | ||
|     </dl>
 | ||
| 
 | ||
|     <p>Cet argument est suivi d'un nom d'en-t<>te qui peut se terminer
 | ||
|     par un caract<63>re ':', mais ce n'est pas obligatoire. La casse est
 | ||
|     ignor<6F>e. Avec <code>set</code>, <code>append</code>,
 | ||
|     <code>merge</code> et <code>add</code>, une <var>valeur</var> est
 | ||
|     fournie en troisi<73>me argument. Si une <var>valeur</var> contient des
 | ||
|     espaces, elle doit <20>tre entour<75>e de guillemets. Avec
 | ||
|     <code>unset</code>, aucune <var>valeur</var> ne doit appara<72>tre.
 | ||
|     <var>valeur</var> peut <20>tre une cha<68>ne de caract<63>res, une cha<68>ne
 | ||
|     contenant des sp<73>cificateurs de format, ou une combinaison des deux.
 | ||
|     Les sp<73>cificateurs de format support<72>s sont les m<>mes que ceux de la
 | ||
|     directive <code class="directive"><a href="#header">Header</a></code>, <20>
 | ||
|     laquelle vous pouvez vous reporter pour plus de d<>tails. Avec
 | ||
|     <code>edit</code>, les deux arguments <var>valeur</var> et
 | ||
|     <var>remplacement</var> sont obligatoires, et correspondent
 | ||
|     respectivement <20> une <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression
 | ||
|     rationnelle</a> et <20> une cha<68>ne de remplacement.</p>
 | ||
| 
 | ||
|     <p>La directive <code class="directive">RequestHeader</code> peut <20>tre
 | ||
|     suivie d'un argument suppl<70>mentaire, qui pourra prendre les valeurs
 | ||
|     suivantes :</p>
 | ||
|     <dl>
 | ||
|     <dt><code>early</code></dt>
 | ||
|     <dd>Sp<53>cifie <a href="#early">traitement pr<70>alable</a>.</dd>
 | ||
|     <dt><code>env=[!]<var>variable</var></code></dt>
 | ||
|     <dd>La directive est appliqu<71>e si et seulement si la <a href="../env.html">variable d'environnement</a>
 | ||
|     <code>variable</code> existe. Un <code>!</code> devant
 | ||
|     <code>variable</code> inverse le test, et la directive ne
 | ||
|     s'appliquera alors que si <code>variable</code> n'est pas d<>finie.</dd>
 | ||
|     <dt><code>expr=<var>expression</var></code></dt>
 | ||
|     <dd>La directive s'applique si et seulement si <var>expression</var>
 | ||
|     est <20>valu<6C>e <20> true. Vous trouverez plus de d<>tails <20> propos de la
 | ||
|     syntaxe et de l'<27>valuation des expressions dans la documentation <a href="../expr.html">ap_expr</a>.</dd>
 | ||
|     </dl>
 | ||
| 
 | ||
|     <p>Except<70> le cas du mode <a href="#early">pr<70>coce</a>, la directive
 | ||
|     <code class="directive">RequestHeader</code> est trait<69>e juste avant la
 | ||
|     prise en compte de la requ<71>te par son gestionnaire, au cours de la
 | ||
|     phase de v<>rification. Ceci permet la modification des en-t<>tes
 | ||
|     g<>n<EFBFBD>r<EFBFBD>s par le navigateur, ou par les filtres en entr<74>e
 | ||
|     d'Apache.</p>
 | ||
| 
 | ||
| </div>
 | ||
| </div>
 | ||
| <div class="bottomlang">
 | ||
| <p><span>Langues Disponibles: </span><a href="../en/mod/mod_headers.html" hreflang="en" rel="alternate" title="English"> en </a> |
 | ||
| <a href="../fr/mod/mod_headers.html" title="Fran<61>ais"> fr </a> |
 | ||
| <a href="../ja/mod/mod_headers.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
 | ||
| <a href="../ko/mod/mod_headers.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_headers.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 2013 The Apache Software Foundation.<br />Autoris<69> 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> |