mod_proxy.html.fr revision 3aba088758372149968c0fd7e5a76df50caee1ec
<?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_proxy - 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/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>
<p class="apache">Serveur Apache HTTP Version 2.5</p>
<img alt="" src="/images/feather.gif" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="/images/left.gif" /></a></div>
<div id="path">
<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>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_proxy</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="/en/mod/mod_proxy.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="/fr/mod/mod_proxy.html" title="Fran�ais">&nbsp;fr&nbsp;</a> |
<a href="/ja/mod/mod_proxy.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a></p>
</div>
<div class="outofdate">Cette traduction peut �tre p�rim�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>Serveur mandataire/passerelle multi-protocole</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur�de�Module:</a></th><td>proxy_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">Fichier�Source:</a></th><td>mod_proxy.c</td></tr></table>
<h3>Sommaire</h3>
<div class="warning"><h3>Avertissement</h3>
<p>N'activez pas la fonctionnalit� de mandataire avec la directive
<code class="directive"><a href="#proxyrequests">ProxyRequests</a></code> avant
d'avoir <a href="#access">s�curis� votre serveur</a>. Les serveurs
mandataires ouverts sont dangereux pour votre r�seau,
mais aussi pour l'Internet au sens large.</p>
</div>
<p><code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> et ses modules associ�s impl�mentent
un mandataire/passerelle pour le serveur HTTP Apache, et supportent
de nombreux protocoles courants, ainsi que plusieurs algorithmes de
r�partition de charge. Le support de protocoles et d'algorithmes de
r�partition de charge suppl�mentaires peut �tre assur� par des
modules tiers.</p>
<p>Un jeu de modules charg�s dans le serveur permet de fournir les
fonctionnalit�s souhait�es. Ces modules peuvent �tre inclus
statiquement � la compilation, ou dynamiquement via la directive
<code class="directive"><a href="/mod/mod_so.html#loadmodule">LoadModule</a></code>. Ce jeu de module
doit comporter :</p>
<ul>
<li><code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code>, qui fournit les fonctionnalit�s de
base d'un mandataire</li>
<li><code class="module"><a href="/mod/mod_proxy_balancer.html">mod_proxy_balancer</a></code> et un ou plusieurs modules
de r�partition, si la r�partition de charge doit �tre mise en
oeuvre (Voir la documentation de
<code class="module"><a href="/mod/mod_proxy_balancer.html">mod_proxy_balancer</a></code> pour plus de d�tails).</li>
<li>un ou plusieurs modules de types de mandataire, ou protocoles
:
<table class="bordered">
<tr><th>Protocole</th><th>Module</th></tr>
<tr><td>AJP13 (Protocole Apache JServe version
1.3)</td><td><code class="module"><a href="/mod/mod_proxy_ajp.html">mod_proxy_ajp</a></code></td></tr>
<tr><td>CONNECT (pour
SSL)</td><td><code class="module"><a href="/mod/mod_proxy_connect.html">mod_proxy_connect</a></code></td></tr>
<tr><td>FastCGI</td><td><code class="module"><a href="/mod/mod_proxy_fcgi.html">mod_proxy_fcgi</a></code></td></tr>
<tr><td>ftp</td><td><code class="module"><a href="/mod/mod_proxy_ftp.html">mod_proxy_ftp</a></code></td></tr>
<tr><td>HTTP/0.9, HTTP/1.0, et
HTTP/1.1</td><td><code class="module"><a href="/mod/mod_proxy_http.html">mod_proxy_http</a></code></td></tr>
<tr><td>SCGI</td><td><code class="module"><a href="/mod/mod_proxy_scgi.html">mod_proxy_scgi</a></code></td></tr>
</table>
</li>
</ul>
<p>En outre, d'autres modules fournissent des fonctionnalit�s
�tendues. <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> et ses modules associ�s
fournissent la mise en cache. Les directives <code>SSLProxy*</code>
du module <code class="module"><a href="/mod/mod_ssl.html">mod_ssl</a></code> permettent de contacter des
serveurs distants en utilisant le protocole SSL/TLS. Ces modules
additionnels devront �tre charg�s et configur�s pour pouvoir
disposer de ces fonctionnalit�s.</p>
</div>
<div id="quickview"><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="/images/down.gif" /> <a href="#balancergrowth">BalancerGrowth</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#balancerinherit">BalancerInherit</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#balancermember">BalancerMember</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#balancerpersist">BalancerPersist</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#noproxy">NoProxy</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxy">&lt;Proxy&gt;</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxyaddheaders">ProxyAddHeaders</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxybadheader">ProxyBadHeader</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxyblock">ProxyBlock</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxydomain">ProxyDomain</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxyerroroverride">ProxyErrorOverride</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxyiobuffersize">ProxyIOBufferSize</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxymatch">&lt;ProxyMatch&gt;</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxymaxforwards">ProxyMaxForwards</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxypass">ProxyPass</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxypassinterpolateenv">ProxyPassInterpolateEnv</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxypassmatch">ProxyPassMatch</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxypassreverse">ProxyPassReverse</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxypassreversecookiedomain">ProxyPassReverseCookieDomain</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxypassreversecookiepath">ProxyPassReverseCookiePath</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxypreservehost">ProxyPreserveHost</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxyreceivebuffersize">ProxyReceiveBufferSize</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxyremote">ProxyRemote</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxyremotematch">ProxyRemoteMatch</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxyrequests">ProxyRequests</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxyset">ProxySet</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxysourceaddress">ProxySourceAddress</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxystatus">ProxyStatus</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxytimeout">ProxyTimeout</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#proxyvia">ProxyVia</a></li>
</ul>
<h3>Sujets</h3>
<ul id="topics">
<li><img alt="" src="/images/down.gif" /> <a href="#forwardreverse">Mandataires directs et
mandataires/passerelles inverses</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#examples">Exemples simples</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#workers">Workers</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#access">Contr�ler l'acc�s � votre
mandataire</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#startup">Ralentissement au d�marrage</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#intranet">Mandataire en Intranet</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#envsettings">Ajustements relatifs au
protocole</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#request-bodies">Corps de requ�tes</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#x-headers">En-t�tes de requ�te du mandataire
inverse</a></li>
</ul><h3>Voir aussi</h3>
<ul class="seealso">
<li><code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code></li>
<li><code class="module"><a href="/mod/mod_proxy_ajp.html">mod_proxy_ajp</a></code></li>
<li><code class="module"><a href="/mod/mod_proxy_connect.html">mod_proxy_connect</a></code></li>
<li><code class="module"><a href="/mod/mod_proxy_fcgi.html">mod_proxy_fcgi</a></code></li>
<li><code class="module"><a href="/mod/mod_proxy_ftp.html">mod_proxy_ftp</a></code></li>
<li><code class="module"><a href="/mod/mod_proxy_http.html">mod_proxy_http</a></code></li>
<li><code class="module"><a href="/mod/mod_proxy_scgi.html">mod_proxy_scgi</a></code></li>
<li><code class="module"><a href="/mod/mod_proxy_balancer.html">mod_proxy_balancer</a></code></li>
<li><code class="module"><a href="/mod/mod_ssl.html">mod_ssl</a></code></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="forwardreverse" id="forwardreverse">Mandataires directs et
mandataires/passerelles inverses</a></h2>
<p>Le serveur HTTP Apache peut �tre configur� dans les deux modes mandataire
<dfn>direct</dfn> et mandataire <dfn>inverse</dfn> (aussi nomm�
mode <dfn>passerelle</dfn>).</p>
<p>Un <dfn>mandataire direct</dfn> standard est un serveur
interm�diaire qui s'intercale entre le client et le <em>serveur
demand�</em>. Pour obtenir un contenu h�berg� par
le serveur demand�, le client envoie une requ�te au
mandataire en nommant le serveur demand� comme
cible, puis le mandataire extrait le contenu depuis le
serveur demand� et le renvoie enfin au client. Le client doit �tre
configur� de mani�re appropri�e pour pouvoir utiliser le mandataire
direct afin d'acc�der � d'autres sites.</p>
<p>L'acc�s � Internet depuis des clients situ�s derri�re un
pare-feu est une utilisation typique du mandataire direct. Le
mandataire direct peut aussi utiliser la mise en cache (fournie
par <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>) pour r�duire la charge du
r�seau.</p>
<p>La fonctionnalit� de mandataire direct est activ�e via la
directive <code class="directive"><a href="#proxyrequests">ProxyRequests</a></code>.
Comme les mandataires directs permettent aux clients d'acc�der �
des sites quelconques via votre serveur et de dissimuler leur
v�ritable origine, il est indispensable de <a href="#access">s�curiser votre serveur</a> de fa�on � ce que seuls
les clients autoris�s puissent acc�der � votre serveur avant
d'activer la fonctionnalit� de mandataire direct.</p>
<p>Un <dfn>mandataire inverse</dfn> (ou <dfn>passerelle</dfn>),
quant � lui, appara�t au client comme un serveur web standard.
Aucune configuration particuli�re du client n'est n�cessaire. Le
client adresse ses demandes de contenus ordinaires dans l'espace
de nommage du mandataire inverse. Ce dernier d�cide alors o�
envoyer ces requ�tes, et renvoie le contenu au client comme s'il
l'h�bergeait lui-m�me.</p>
<p>L'acc�s d'utilisateurs depuis Internet vers un serveur situ�
derri�re un pare-feu est une utilisation typique du mandataire
inverse. On peut aussi utiliser les mandataires inverses pour
mettre en oeuvre une r�partition de charge entre plusieurs
serveurs en arri�re-plan, ou fournir un cache pour un serveur
d'arri�re-plan plus lent. Les mandataires inverses peuvent aussi
tout simplement servir � rassembler plusieurs serveurs dans le
m�me espace de nommage d'URLs.</p>
<p>La fonctionnalit� de mandataire inverse est activ�e via la
directive <code class="directive"><a href="#proxypass">ProxyPass</a></code> ou
le drapeau <code>[P]</code> de la directive <code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>. Il n'est
<strong>pas</strong> n�cessaire de d�finir <code class="directive"><a href="#proxyrequests">ProxyRequests</a></code> pour configurer
un mandataire inverse.</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 simples</a></h2>
<p>Les exemples ci-dessous illustrent de mani�re tr�s basique la
mise en oeuvre de la fonctionnalit� de mandataire et ne sont l� que
pour vous aider � d�marrer. Reportez-vous � la documentation de
chaque directive.</p>
<p>Si en outre, vous d�sirez activer la mise en cache, consultez la
documentation de <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>.</p>
<div class="example"><h3>Mandataire inverse</h3><pre class="prettyprint lang-config">
ProxyPass /foo http://foo.example.com/bar
ProxyPassReverse /foo http://foo.example.com/bar
</pre>
</div>
<div class="example"><h3>Mandataire direct</h3><pre class="prettyprint lang-config">
ProxyRequests On
ProxyVia On
&lt;Proxy *&gt;
Require host internal.example.com
&lt;/Proxy&gt;
</pre>
</div>
</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="workers" id="workers">Workers</a></h2>
<p>Le mandataire g�re la configuration et les param�tres de
communication des serveurs originaux au sein d'objets nomm�s
<dfn>workers</dfn>. Deux types de worker sont fournis : le worker
par d�faut du mandataire direct et le worker par d�faut du
mandataire inverse. Il est aussi possible de d�finir explicitement
des workers suppl�mentaires.</p>
<p>Les deux workers par d�faut poss�dent une configuration fig�e
et seront utilis�s si aucun autre worker ne correspond � la
requ�te. Ils n'utilisent ni les jeux de connexions (connection
pooling), ni les
connexions HTTP persistantes (Keep-Alive). En effet, les
connexions TCP vers le serveur original sont ferm�es et ouvertes
pour chaque requ�te.</p>
<p>Les workers d�finis explicitement sont identifi�s par leur URL.
Ils sont en g�n�ral d�finis via les directives <code class="directive"><a href="#proxypass">ProxyPass</a></code> ou <code class="directive"><a href="#proxypassmatch">ProxyPassMatch</a></code> lorsqu'on les
utilise dans le cadre d'un mandataire inverse :</p>
<div class="example"><pre class="prettyprint lang-config">
ProxyPass /example http://backend.example.com connectiontimeout=5 timeout=30
</pre>
</div>
<p>Cette directive va cr�er un worker associ� � l'URL du serveur
original <code>http://backend.example.com</code>, et utilisant les
valeurs de timeout donn�es. Lorsqu'ils sont utilis�s dans le cadre
d'un mandataire direct, les workers sont en g�n�ral d�finis via la
directive <code class="directive"><a href="#proxyset">ProxySet</a></code>,</p>
<div class="example"><pre class="prettyprint lang-config">
ProxySet http://backend.example.com connectiontimeout=5 timeout=30
</pre>
</div>
<p>ou encore via les directives <code class="directive"><a href="#proxy">Proxy</a></code> et <code class="directive"><a href="#proxyset">ProxySet</a></code> :</p>
<pre class="prettyprint lang-config">
&lt;Proxy http://backend.example.com&gt;
ProxySet connectiontimeout=5 timeout=30
&lt;/Proxy&gt;
</pre>
<p>L'utilisation de workers d�finis explicitement dans le mode
mandataire direct n'est pas tr�s courante, car les mandataires
directs communiquent en g�n�ral avec de nombreux serveurs
originaux. La cr�ation explicite de workers pour certains serveurs
originaux peut cependant s'av�rer utile si ces serveurs sont
tr�s souvent sollicit�s. A leur niveau, les workers explicitement
d�finis ne poss�dent aucune notion de mandataire direct ou
inverse. Ils encapsulent un concept de communication commun avec
les serveurs originaux. Un worker cr�� via la directive <code class="directive"><a href="#proxypass">ProxyPass</a></code> pour �tre utilis� dans le
cadre d'un mandataire inverse sera aussi utilis� dans le cadre
d'un mandataire directe chaque fois que l'URL vers le serveur
original correspondra � l'URL du worker, et vice versa.</p>
<p>L'URL qui identifie un worker correspond � l'URL de son serveur
original, y compris un �ventuel chemin donn� :</p>
<pre class="prettyprint lang-config">
ProxyPass /examples http://backend.example.com/examples
ProxyPass /docs http://backend.example.com/docs
</pre>
<p>Dans cet exemple, deux workers diff�rents sont d�finis, chacun
d'eux utilisant des configurations et jeux de connexions
s�par�s.</p>
<div class="warning"><h3>Partage de workers</h3>
<p>Le partage de workers intervient lorsque les URLs des workers
s'entrecoupent, ce qui arrive lorsque l'URL d'un worker
correspond au d�but de l'URL d'un autre worker d�fini plus loin
dans le fichier de configuration. Dans l'exemple suivant,</p>
<pre class="prettyprint lang-config">
ProxyPass /apps http://backend.example.com/ timeout=60
ProxyPass /examples http://backend.example.com/examples timeout=10
</pre>
<p>le second worker n'est pas vraiment cr��. C'est le premier
worker qui est en fait utilis�. L'avantage de ceci r�side dans
le fait qu'il n'existe qu'un seul jeu de connexions, ces
derni�res �tant donc r�utilis�es plus souvent. Notez que tous
les attributs de configuration d�finis explicitement pour le
deuxi�me worker seront ignor�s, ce qui sera journalis� en tant
qu'avertissement. Ainsi, dans l'exemple ci-dessus, la valeur de
timeout retenue pour l'URL <code>/exemples</code> sera
<code>60</code>, et non <code>10</code> !</p>
<p>Si vous voulez emp�cher le partage de workers, classez vos
d�finitions de workers selon la longueur des URLs, de la plus
longue � la plus courte. Si au contraire vous voulez favoriser
ce partage, utilisez l'ordre de classement inverse. Voir aussi
l'avertissement � propos de l'ordre de classement des directives
<code class="directive"><a href="#proxypass">ProxyPass</a></code>.</p>
</div>
<p>Les workers d�finis explicitement sont de deux sortes :
<dfn>workers directs</dfn> et <dfn>workers de r�partition (de
charge)</dfn>. Ils supportent de nombreux attributs de
configuration importants d�crits dans la directive <code class="directive"><a href="#proxypass">ProxyPass</a></code>. Ces m�mes attributs
peuvent aussi �tre d�finis via la directive <code class="directive"><a href="#proxyset">ProxySet</a></code>.</p>
<p>Le jeu d'options disponibles pour un worker direct d�pend du
protocole sp�cifi� dans l'URL du serveur original. Les protocoles
disponibles comprennent <code>ajp</code>, <code>fcgi</code>,
<code>ftp</code>, <code>http</code> et <code>scgi</code>.</p>
<p>Les workers de r�partition sont des workers virtuels qui
utilisent les workers directs, connus comme faisant partie de leurs
membres, pour le traitement effectif des requ�tes. Chaque
r�partiteur peut comporter plusieurs membres. Lorsqu'il traite une
requ�te, il choisit un de ses membres en fonction de l'algorithme
de r�partition de charge d�fini.</p>
<p>Un worker de r�partition est cr�� si son URL de worker comporte
<code>balancer</code> comme indicateur de protocole. L'URL du
r�partiteur permet d'identifier de mani�re unique le worker de
r�partition. La directive <code class="directive"><a href="#balancermember">BalancerMember</a></code> permet d'ajouter des
membres au r�partiteur.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="access" id="access">Contr�ler l'acc�s � votre
mandataire</a></h2>
<p>Vous pouvez restreindre l'acc�s � votre mandataire via le bloc
de contr�le <code class="directive"><a href="#proxy">&lt;Proxy&gt;</a></code> comme dans
l'exemple suivant :</p>
<pre class="prettyprint lang-config">
&lt;Proxy *&gt;
Require ip 192.168.0
&lt;/Proxy&gt;
</pre>
<p>Pour plus de d�tails sur les directives de contr�le d'acc�s,
voir la documentation du module
<code class="module"><a href="/mod/mod_authz_host.html">mod_authz_host</a></code>.</p>
<p>Restreindre l'acc�s de mani�re stricte est essentiel si vous
mettez en oeuvre un mandataire direct (en d�finissant la directive
<code class="directive"><a href="#proxyrequests">ProxyRequests</a></code> � "on").
Dans le cas contraire, votre serveur pourrait �tre utilis� par
n'importe quel client pour acc�der � des serveurs quelconques,
tout en masquant sa v�ritable identit�. Ceci repr�sente un danger
non seulement pour votre r�seau, mais aussi pour l'Internet au
sens large. Dans le cas de la mise en oeuvre d'un mandataire
inverse (en d�finissant la directive <code class="directive"><a href="#proxypass">ProxyPass</a></code> � "off"), le contr�le
d'acc�s est moins critique car les clients ne peuvent contacter
que les serveurs que vous avez sp�cifi�s.</p>
<p><strong>Voir aussi</strong> la variable d'environnement <a href="mod_proxy_http.html#env">Proxy-Chain-Auth</a>.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="startup" id="startup">Ralentissement au d�marrage</a></h2>
<p>Si vous utilisez la directive <code class="directive"><a href="#proxyblock">ProxyBlock</a></code>, les noms d'h�tes sont r�solus en adresses
IP puis ces derni�res mises en cache au cours du d�marrage
� des fins de tests de comparaisons ult�rieurs. Ce processus peut
durer plusieurs secondes (ou d'avantage) en fonction de la vitesse
� laquelle s'effectue la r�solution des noms d'h�tes.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="intranet" id="intranet">Mandataire en Intranet</a></h2>
<p>Un serveur mandataire Apache httpd situ� � l'int�rieur d'un Intranet
doit faire suivre les requ�tes destin�es � un serveur externe �
travers le pare-feu de l'entreprise (pour ce faire, d�finissez la
directive <code class="directive"><a href="#proxyremote">ProxyRemote</a></code> de
fa�on � ce qu'elle fasse suivre le <var>protocole</var> concern�
vers le mandataire du pare-feu). Cependant, lorsqu'il doit acc�der
� des ressources situ�es dans l'Intranet, il peut se passer du
pare-feu pour acc�der aux serveurs. A cet effet, la directive
<code class="directive"><a href="#noproxy">NoProxy</a></code> permet de
sp�cifier quels h�tes appartiennent � l'Intranet et peuvent donc
�tre acc�d�s directement.</p>
<p>Les utilisateurs d'un Intranet ont tendance � oublier le nom du
domaine local dans leurs requ�tes WWW, et demandent par exemple
"http://un-serveur/" au lieu de
<code>http://un-serveur.example.com/</code>. Certains serveurs
mandataires commerciaux acceptent ce genre de requ�te et les
traitent simplement en utilisant un nom de domaine local
implicite. Lorsque la directive <code class="directive"><a href="#proxydomain">ProxyDomain</a></code> est utilis�e et si le
serveur est <a href="#proxyrequests">configur� comme
mandataire</a>, Apache httpd peut renvoyer une r�ponse de redirection et
ainsi fournir au client l'adresse de serveur correcte,
enti�rement qualifi�e. C'est la m�thode � privil�gier car le
fichier des marque-pages de l'utilisateur contiendra alors des
noms de serveurs enti�rement qualifi�s.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="envsettings" id="envsettings">Ajustements relatifs au
protocole</a></h2>
<p>Pour les cas o� <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> envoie des requ�tes
vers un serveur qui n'impl�mente pas correctement les connexions
persistantes ou le protocole HTTP/1.1, il existe deux variables
d'environnement qui permettent de forcer les requ�tes � utiliser
le protocole HTTP/1.0 avec connexions non persistantes. Elles
peuvent �tre d�finies via la directive <code class="directive"><a href="/mod/mod_env.html#setenv">SetEnv</a></code>.</p>
<p>Il s'agit des variables <code>force-proxy-request-1.0</code> et
<code>proxy-nokeepalive</code>.</p>
<pre class="prettyprint lang-config">
&lt;Location /buggyappserver/&gt;
ProxyPass http://buggyappserver:7001/foo/
SetEnv force-proxy-request-1.0 1
SetEnv proxy-nokeepalive 1
&lt;/Location&gt;
</pre>
</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="request-bodies" id="request-bodies">Corps de requ�tes</a></h2>
<p>Certaines m�thodes de requ�tes comme POST comportent un corps de
requ�te. Le protocole HTTP stipule que les requ�tes qui comportent
un corps doivent soit utiliser un codage de transmission
fractionn�e (chunked transfer encoding), soit envoyer un en-t�te de requ�te
<code>Content-Length</code>. Lorsqu'il fait suivre ce genre de
requ�te vers le serveur demand�, <code class="module"><a href="/mod/mod_proxy_http.html">mod_proxy_http</a></code>
s'efforce toujours d'envoyer l'en-t�te <code>Content-Length</code>.
Par contre, si la taille du corps est importante, et si la requ�te
originale utilise un codage � fractionnement, ce dernier peut aussi
�tre utilis� dans la requ�te montante. Ce comportement peut �tre
contr�l� � l'aide de <a href="/env.html">variables
d'environnement</a>. Ainsi, si elle est d�finie, la variable
<code>proxy-sendcl</code> assure une compatibilit� maximale avec les
serveurs demand�s en imposant l'envoi de l'en-t�te
<code>Content-Length</code>, alors que
<code>proxy-sendchunked</code> diminue la consommation de ressources
en imposant l'utilisation d'un codage � fractionnement.</p>
<p>Dans certaines circonstances, le serveur doit mettre en file
d'attente sur disque les corps de requ�tes afin de satisfaire le
traitement demand� des corps de requ�tes. Par exemple, cette mise en
file d'attente se produira si le corps original a �t� envoy� selon un
codage morcel� (et poss�de une taille importante), alors que
l'administrateur a demand� que les requ�tes du serveur
d'arri�re-plan soient envoy�es avec l'en-t�te Content-Length ou en
HTTP/1.0. Cette mise en file d'attente se produira aussi si le corps
de la requ�te contient d�j� un en-t�te Content-Length, alors que le
serveur est configur� pour filtrer les corps des requ�tes entrantes.</p>
<p>La directive <code class="directive"><a href="/mod/core.html#limitrequestbody">LimitRequestBody</a></code> ne s'applique qu'aux
corps de requ�tes que le serveur met en file d'attente sur disque.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="x-headers" id="x-headers">En-t�tes de requ�te du mandataire
inverse</a></h2>
<p>Lorsqu'il est configur� en mode mandataire inverse (en utilisant
par exemple la directive <code class="directive"><a href="#proxypass">ProxyPass</a></code>),
<code class="module"><a href="/mod/mod_proxy_http.html">mod_proxy_http</a></code> ajoute plusieurs en-t�tes de requ�te
afin de transmettre des informations au serveur demand�. Ces
en-t�tes sont les suivants :</p>
<dl>
<dt><code>X-Forwarded-For</code></dt>
<dd>L'adresse IP du client.</dd>
<dt><code>X-Forwarded-Host</code></dt>
<dd>L'h�te d'origine demand� par le client dans l'en-t�te de
requ�te HTTP <code>Host</code>.</dd>
<dt><code>X-Forwarded-Server</code></dt>
<dd>Le nom d'h�te du serveur mandataire.</dd>
</dl>
<p>Ces en-t�tes doivent �tre utilis�s avec pr�cautions sur le
serveur demand�, car ils contiendront plus d'une valeur (s�par�es
par des virgules) si la requ�te originale contenait d�j� un de ces
en-t�tes. Par exemple, vous pouvez utiliser
<code>%{X-Forwarded-For}i</code> dans la cha�ne de format du journal
du serveur demand� pour enregistrer les adresses IP des clients
originaux, mais il est possible que vous obteniez plusieurs adresses
si la requ�te passe � travers plusieurs mandataires.</p>
<p>Voir aussi les directives <code class="directive"><a href="#proxypreservehost">ProxyPreserveHost</a></code> et <code class="directive"><a href="#proxyvia">ProxyVia</a></code> directives, qui permettent
de contr�ler d'autres en-t�tes de requ�te.</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="BalancerGrowth" id="BalancerGrowth">BalancerGrowth</a> <a name="balancergrowth" id="balancergrowth">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre de membres suppl�mentaires pouvant �tre ajout�s
apr�s la configuration initiale</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>BalancerGrowth <var>#</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>BalancerGrowth 5</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit�:</a></th><td>BalancerGrowth est disponible depuis la version 2.3.13 du
serveur HTTP Apache</td></tr>
</table>
<p>Cette directive permet de d�finir le nombre de membres pouvant
�tre ajout�s au groupe de r�partition de charge pr�configur� d'un
serveur virtuel. Elle n'est active que si le groupe a �t�
pr�configur� avec un membre au minimum.</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="BalancerInherit" id="BalancerInherit">BalancerInherit</a> <a name="balancerinherit" id="balancerinherit">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>H�ritage des membres de groupes de r�partition de
charge d�finis via la directive ProxyPass au niveau du serveur principal</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>BalancerInherit On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>BalancerInherit On</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit�:</a></th><td>Disponible � partir de la version 2.5.0 du serveur
HTTP Apache.</td></tr>
</table>
<p>Cette directive permet d'attribuer au serveur virtuel courant
l'h�ritage des membres de groupes de r�partition de charge
d�finis via la directive ProxyPass au niveau du serveur
principal. Elle ne doit pas �tre activ�e si vous utilisez le
gestionnaire de r�partition de charge (Balancer Manager) pour
�viter des probl�mes et des comportements inattendus.</p>
<p>Les d�finitions au niveau du serveur principal constituent
les d�finitions par d�faut au niveau des serveurs virtuels.</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="BalancerMember" id="BalancerMember">BalancerMember</a> <a name="balancermember" id="balancermember">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Ajoute un membre � un groupe de r�partition de
charge</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>BalancerMember [<var>balancerurl</var>] <var>url</var> [<var>cl�=valeur [cl�=valeur ...]]</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
</table>
<p>Cette directive permet d'ajouter un membre � un groupe de
r�partition de charge. Elle peut se trouver dans un conteneur
<code>&lt;Proxy <var>balancer://</var>...&gt;</code>, et accepte
tous les param�tres de paires cl�/valeur que supporte la directive
<code class="directive"><a href="#proxypass">ProxyPass</a></code>.</p>
<p>La directive <code class="directive"><a href="#balancermember">BalancerMember</a></code> accepte un param�tre
suppl�mentaire : <var>loadfactor</var>. Il s'agit du facteur de
charge du membre - un nombre entre 1 (valeur par d�faut) et 100, qui
d�finit la charge � appliquer au membre en question.</p>
<p>L'argument balancerurl n'est requis que s'il ne se trouve pas
d�j� dans la directive de conteneur <code>&lt;Proxy
<var>balancer://</var>...&gt;</code>. Il correspond � l'URL d'un
r�partiteur de charge d�fini par une directive <code class="directive"><a href="#proxypass">ProxyPass</a></code>.</p>
<p>La partie chemin de l'URL du membre du groupe de r�partition de
charge dans toute directive de conteneur <code>&lt;Proxy
<var>balancer://</var>...&gt;</code> est ignor�e.</p>
<p>Les slashes de fin doivent normalement �tre supprim�s de l'URL
d'un <code>BalancerMember</code>.</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="BalancerPersist" id="BalancerPersist">BalancerPersist</a> <a name="balancerpersist" id="balancerpersist">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Tente de conserver les changements effectu�s par le
gestionnaire de r�partition de charge apr�s un red�marrage du
serveur.</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>BalancerPersist On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>BalancerPersist Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit�:</a></th><td>BalancerPersist n'est disponible qu'� partir de la
version 2.5.0 du serveur HTTP Apache.</td></tr>
</table>
<p>Cette directive permet de conserver le contenu de l'espace
m�moire partag� associ� aux r�partiteurs de charge et � leurs
membres apr�s un red�marrage du serveur. Ces modifications
locales ne sont ainsi pas perdues lors des transitions d'�tat
dues � un red�marrage.</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="NoProxy" id="NoProxy">NoProxy</a> <a name="noproxy" id="noproxy">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Serveurs, domaines ou r�seaux auquels on se connectera
directement</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>NoProxy <var>domaine</var> [<var>domaine</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>Cette directive n'a d'utilit� que pour les serveurs mandataires
Apache httpd au sein d'Intranets. La directive
<code class="directive">NoProxy</code> permet de sp�cifier une liste de
sous-r�seaux, d'adresses IP, de serveurs et/ou de domaines s�par�s
par des espaces. Une requ�te pour un serveur qui correspond � un ou
plusieurs crit�res sera toujours servie par ce serveur directement,
sans �tre redirig�e vers le(s) serveur(s) mandataire(s) d�fini(s) par
la directive <code class="directive"><a href="#proxyremote">ProxyRemote</a></code>.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
ProxyRemote * http://firewall.example.com:81
NoProxy .example.com 192.168.112.0/21
</pre>
</div>
<p>Le type des arguments <var>serveur</var> de la directive
<code class="directive">NoProxy</code> appartiennent � la liste suivante
:</p>
<dl>
<dt><var><a name="domain" id="domain">Domaine</a></var></dt>
<dd>
<p>Un <dfn>domaine</dfn> est ici un nom de domaine DNS partiellement
qualifi� pr�c�d� d'un point. Il repr�sente une liste de serveurs qui
appartiennent logiquement au m�me domaine ou � la m�me zonz DNS
(en d'autres termes, les nom des serveurs se terminent tous par
<var>domaine</var>).</p>
<div class="example"><h3>Exemple</h3><p><code>
.com .example.org.
</code></p></div>
<p>Pour faire la distinction entre <var>domaine</var>s et <var><a href="#hostname">nom d'h�te</a></var>s (des points de vue � la fois
syntaxique et
s�mantique, un domaine DNS pouvant aussi avoir un enregistrement DNS
de type A !), les <var>domaine</var>s sont toujours sp�cifi�s en les
pr�fixant par un point.</p>
<div class="note"><h3>Note</h3>
<p>Les comparaisons de noms de domaines s'effectuent sans tenir
compte de la casse, et les parties droites des <var>Domaine</var>s
sont toujours cens�es correspondre � la racine de l'arborescence
DNS, si bien que les domaines <code>.ExEmple.com</code> et
<code>.example.com.</code> (notez le point � la fin du nom) sont
consid�r�s comme identiques. Comme une comparaison de domaines ne
n�cessite pas de recherche DNS, elle est beaucoup plus efficace
qu'une comparaison de sous-r�seaux.</p>
</div></dd>
<dt><var><a name="subnet" id="subnet">Sous-r�seau</a></var></dt>
<dd>
<p>Un <dfn>Sous-r�seau</dfn> est une adresse internet partiellement
qualifi�e sous forme num�rique (quatre nombres s�par�s par des
points), optionnellement suivie d'un slash et du masque de
sous-r�seau sp�cifiant le nombre de bits significatifs dans le
<var>Sous-r�seau</var>. Il repr�sente un sous-r�seau de serveurs qui
peuvent �tre atteints depuis la m�me interface r�seau. En l'absence
de masque de sous-r�seau explicite, il est sous-entendu que les
digits manquants (ou caract�res 0) de fin sp�cifient le masque de
sous-r�seau (Dans ce cas, le masque de sous-r�seau ne peut �tre
qu'un multiple de 8). Voici quelques exemples :</p>
<dl>
<dt><code>192.168</code> ou <code>192.168.0.0</code></dt>
<dd>le sous-r�seau 192.168.0.0 avec un masque de sous-r�seau
implicite de 16 bits significatifs (parfois exprim� sous la forme
<code>255.255.0.0</code>)</dd>
<dt><code>192.168.112.0/21</code></dt>
<dd>le sous-r�seau <code>192.168.112.0/21</code> avec un masque de
sous-r�seau implicite de 21 bits significatifs (parfois exprim�
sous la forme<code>255.255.248.0</code>)</dd>
</dl>
<p>Comme cas extr�mes, un <em>Sous-r�seau</em> avec un masque de
sous-r�seau de 32 bits significatifs est �quivalent � une <var><a href="#ipaddr">adresse IP</a></var>, alors qu'un <em>Sous-r�seau</em> avec un masque de
sous-r�seau de 0 bit significatif (c'est � dire 0.0.0.0/0) est
identique � la constante <var>_Default_</var>, et peut correspondre
� toute adresse IP.</p></dd>
<dt><var><a name="ipaddr" id="ipaddr">Adresse IP</a></var></dt>
<dd>
<p>Une <dfn>Adresse IP</dfn> est une adresse internet pleinement
qualifi�e sous forme num�rique (quatre nombres s�par�s par des
points). En g�n�ral, cette adresse repr�sente un serveur, mais elle
ne doit pas n�cessairement correspondre � un nom de domaine DNS.</p>
<div class="example"><h3>Exemple</h3><p><code>
192.168.123.7
</code></p></div>
<div class="note"><h3>Note</h3>
<p>Une <dfn>Adresse IP</dfn> ne n�cessite pas de r�solution DNS,
et peut ainsi s'av�rer plus efficace quant aux performances
d'Apache.</p>
</div></dd>
<dt><var><a name="hostname" id="hostname">Nom de serveur</a></var></dt>
<dd>
<p>Un <dfn>Nom de serveur</dfn> est un nom de domaine DNS pleinement
qualifi� qui peut �tre r�solu en une ou plusieurs adresses IP par le
service de noms de domaines DNS. Il repr�sente un h�te logique (par
opposition aux <var><a href="#domain">Domaine</a></var>s, voir
ci-dessus), et doit pouvoir �tre r�solu en une ou plusieurs <var><a href="#ipaddr">adresses IP</a></var> (ou souvent en une liste
d'h�tes avec diff�rentes <var><a href="#ipaddr">adresses
IP</a></var>).</p>
<div class="example"><h3>Exemples</h3><p><code>
prep.ai.example.edu<br />
www.example.org
</code></p></div>
<div class="note"><h3>Note</h3>
<p>Dans de nombreuses situations, il est plus efficace de
sp�cifier une <var><a href="#ipaddr">adresse IP</a></var> qu'un
<var>Nom de serveur</var> car cela �vite d'avoir � effectuer une
recherche DNS. La r�solution de nom dans Apache httpd peut prendre un
temps tr�s long lorsque la connexion avec le serveur de noms
utilise une liaison PPP lente.</p>
<p>Les comparaisons de <var>Nom de serveur</var> s'effectuent sans tenir
compte de la casse, et les parties droites des <var>Noms de serveur</var>
sont toujours cens�es correspondre � la racine de l'arborescence
DNS, si bien que les domaines <code>WWW.ExEmple.com</code> et
<code>www.example.com.</code> (notez le point � la fin du nom) sont
consid�r�s comme identiques.</p>
</div></dd>
</dl>
<h3>Voir aussi</h3>
<ul>
<li><a href="/dns-caveats.html">Probl�mes li�s au DNS</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Proxy" id="Proxy">&lt;Proxy&gt;</a> <a name="proxy" id="proxy">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Conteneur de directives s'appliquant � des ressources
mandat�es</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;Proxy <var>url-avec-jokers</var>&gt; ...&lt;/Proxy&gt;</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>Les directives situ�es dans une section <code class="directive">&lt;Proxy&gt;</code> ne s'appliquent qu'au contenu
mandat� concern�. Les jokers de style shell sont autoris�s.</p>
<p>Par exemple, les lignes suivantes n'autoriseront � acc�der � un
contenu via votre serveur mandataire que les h�tes appartenant �
<code>votre-reseau.example.com</code> :</p>
<pre class="prettyprint lang-config">
&lt;Proxy *&gt;
Require host votre-reseau.example.com
&lt;/Proxy&gt;
</pre>
<p>Dans l'exemple suivant, tous les fichiers du r�pertoire
<code>foo</code> de <code>example.com</code> seront trait�s par le
filtre <code>INCLUDES</code> lorsqu'ils seront envoy�s par
l'interm�diaire du serveur mandataire :</p>
<pre class="prettyprint lang-config">
&lt;Proxy http://example.com/foo/*&gt;
SetOutputFilter INCLUDES
&lt;/Proxy&gt;
</pre>
<h3>Voir aussi</h3>
<ul>
<li><code class="directive"><a href="#proxymatch">&lt;ProxyMatch&gt;</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ProxyAddHeaders" id="ProxyAddHeaders">ProxyAddHeaders</a> <a name="proxyaddheaders" id="proxyaddheaders">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Ajoute des informations � propos du mandataire aux
en-t�tes X-Forwarded-*</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyAddHeaders Off|On</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyAddHeaders On</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit�:</a></th><td>Disponible depuis la version 2.3.10</td></tr>
</table>
<p>Cette directive permet de passer au serveur d'arri�re-plan des
informations � propos du mandataire via les en-t�tes HTTP
X-Forwarded-For, X-Forwarded-Host et X-Forwarded-Server.</p>
<div class="note"><h3>Utilit�</h3>
<p>Cette option n'est utile que dans le cas du mandat HTTP trait�
par <code class="module"><a href="/mod/mod_proxy_http.html">mod_proxy_http</a></code>.</p>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ProxyBadHeader" id="ProxyBadHeader">ProxyBadHeader</a> <a name="proxybadheader" id="proxybadheader">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�termine la mani�re de traiter les lignes d'en-t�te
incorrectes d'une r�ponse</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyBadHeader IsError|Ignore|StartBody</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyBadHeader IsError</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>La directive <code class="directive">ProxyBadHeader</code> permet de
d�terminer le comportement de <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> lorsqu'il
re�oit des lignes d'en-t�te de r�ponse dont la syntaxe n'est pas valide (c'est
� dire ne contenant pas de caract�re ':') en provenance du serveur
original. Les arguments disponibles sont :</p>
<dl>
<dt><code>IsError</code></dt>
<dd>Annule la requ�te et renvoie une r�ponse de code 502 (mauvaise
passerelle). C'est le comportement par d�faut.</dd>
<dt><code>Ignore</code></dt>
<dd>Traite les lignes d'en-t�te incorrectes comme si elles n'avaient
pas �t� envoy�es.</dd>
<dt><code>StartBody</code></dt>
<dd>A la r�ception de la premi�re ligne d'en-t�te incorrecte, les
autres en-t�tes sont lus et ce qui reste est trait� en tant que
corps. Ceci facilite la prise en compte des serveurs d'arri�re-plan
bogu�s qui oublient d'ins�rer une ligne vide entre les
en-t�tes et le corps.</dd>
</dl>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ProxyBlock" id="ProxyBlock">ProxyBlock</a> <a name="proxyblock" id="proxyblock">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Interdit les requ�tes mandat�es vers certains h�tes</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyBlock *|<var>nom d'h�te</var>|<var>nom d'h�te partiel</var>
[<var>nom d'h�te</var>|<var>nom d'h�te partiel</var>]...</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>La directive <code class="directive">ProxyBlock</code> permet d'interdire
l'acc�s FTP ou HTTP via le mandataire � certains h�tes en fonction
d'une correspondance exacte ou partielle avec un nom d'h�te, ou dans
la mesure du possible en fonction d'une comparaison d'adresses IP.</p>
<p>Chaque param�tre de la directive
<code class="directive">ProxyBlock</code> accepte comme valeur soit
<code>*</code>, soit une cha�ne alphanum�rique. Au d�marrage, le
module tente de r�soudre toute cha�ne alphanum�rique depuis un nom
DNS vers un jeu d'adresses IP, mais toute erreur de DNS est ignor�e.</p>
<p>Si un param�tre a pour valeur "<code>*</code>",
<code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> interdira l'acc�s � tout site FTP ou
HTTP.</p>
<p>Dans le cas contraire, pour toute requ�te vers une ressource FTP
ou HTTP via le mandataire, <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> va comparer le
nom d'h�te de l'URI de la requ�te avec chaque cha�ne alphanum�rique
sp�cifi�e. Si une cha�ne correspond, m�me partiellement, l'acc�s est
refus�. Si aucune cha�ne ne correspond, et si un mandataire distant
(forward) est configur� via la directive
<code class="directive">ProxyRemote</code> ou
<code class="directive">ProxyRemoteMatch</code>, l'acc�s est autoris�. Si
aucun mandataire distant (forward) n'est configur�, l'adresse IP
correspondant au nom d'h�te de l'URI est compar�e � toutes les
adresses IP r�solues au d�marrage, et l'acc�s est refus� si une
correspondance est trouv�e.</p>
<p>Notez que les recherches DNS peuvent ralentir le processus de
d�marrage du serveur.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
ProxyBlock news.example.com auctions.example.com friends.example.com
</pre>
</div>
<p>Notez qu'<code>example</code> suffirait aussi pour atteindre
ces sites.</p>
<p>Hosts conviendrait aussi s'il �tait r�f�renc� par adresse IP.</p>
<p>Notez aussi que</p>
<pre class="prettyprint lang-config">
ProxyBlock *
</pre>
<p>bloque les connexions vers tous les sites.</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="ProxyDomain" id="ProxyDomain">ProxyDomain</a> <a name="proxydomain" id="proxydomain">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nom de domaine par d�faut pour les requ�tes
mandat�es</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyDomain <var>Domaine</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>Cette directive n'a d'utilit� que pour les serveurs mandataires
Apache httpd au sein d'un Intranet. La directive
<code class="directive">ProxyDomain</code> permet de sp�cifier le domaine
par d�faut auquel le serveur mandataire apache appartient. Si le
serveur re�oit une requ�te pour un h�te sans nom de domaine, il va
g�n�rer une r�ponse de redirection vers le m�me h�te suffix� par le
<var>Domaine</var> sp�cifi�.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
ProxyRemote * http://firewall.example.com:81<br />
NoProxy .example.com 192.168.112.0/21<br />
ProxyDomain .example.com
</pre>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ProxyErrorOverride" id="ProxyErrorOverride">ProxyErrorOverride</a> <a name="proxyerroroverride" id="proxyerroroverride">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Outrepasser les pages d'erreur pour les contenus
mandat�s</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyErrorOverride On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyErrorOverride Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
</table>
<p>Cette directive est utile pour les configurations de mandataires
inverses, lorsque vous souhaitez que les pages d'erreur envoy�es
aux utilisateurs finaux pr�sentent un aspect homog�ne. Elle permet
aussi l'inclusion de fichiers (via les SSI de
<code class="module"><a href="/mod/mod_include.html">mod_include</a></code>) pour obtenir le code d'erreur et agir
en cons�quence (le comportement par d�faut afficherait la page
d'erreur du serveur mandat�, alors que c'est le message d'erreur SSI
qui sera affich� si cette directive est � "on").</p>
<p>Cette directive n'affecte pas le traitement des r�ponses
informatives (1xx), de type succ�s normal (2xx), ou de redirection
(3xx).</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="ProxyIOBufferSize" id="ProxyIOBufferSize">ProxyIOBufferSize</a> <a name="proxyiobuffersize" id="proxyiobuffersize">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�termine la taille du tampon interne de transfert de
donn�es</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyIOBufferSize <var>octets</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyIOBufferSize 8192</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>La directive <code class="directive">ProxyIOBufferSize</code> permet
d'ajuster la taille du tampon interne utilis� comme bloc-note pour
les transferts de donn�es entre entr�e et sortie. La taille minimale
est de <code>512</code> octets.</p>
<p>Dans la plupart des cas, il n'y a aucune raison de modifier cette
valeur.</p>
<p>Si elle est utilis�e avec AJP, cette directive permet de d�finir
la taille maximale du paquet AJP en octets. Si vous ne conservez pas
la valeur par d�faut, vous devez aussi modifier l'attribut
<code>packetSize</code> de votre connecteur AJP du c�t� de Tomcat !
L'attribut <code>packetSize</code> n'est disponible que dans Tomcat
<code>5.5.20+</code> et <code>6.0.2+</code>.</p>
<p>Il n'est normalement pas n�cessaire de modifier la taille
maximale du paquet. Des probl�mes ont cependant �t� rapport�s avec
la valeur par d�faut lors de l'envoi de certificats ou de cha�nes de
certificats.</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="ProxyMatch" id="ProxyMatch">&lt;ProxyMatch&gt;</a> <a name="proxymatch" id="proxymatch">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Conteneur de directives s'appliquant � des ressources
mandat�es correspondant � une expression rationnelle</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;ProxyMatch <var>regex</var>&gt; ...&lt;/ProxyMatch&gt;</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>La directive <code class="directive">&lt;ProxyMatch&gt;</code> est
identique � la directive <code class="directive"><a href="#proxy">&lt;Proxy&gt;</a></code>, � l'exception qu'elle d�finit
les URLs auxquelles elle s'applique en utilisant une <a class="glossarylink" href="/glossary.html#regex" title="voir glossaire">expression rationnelle</a>.</p>
<h3>Voir aussi</h3>
<ul>
<li><code class="directive"><a href="#proxy">&lt;Proxy&gt;</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ProxyMaxForwards" id="ProxyMaxForwards">ProxyMaxForwards</a> <a name="proxymaxforwards" id="proxymaxforwards">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre maximum de mandataires � travers lesquelles une
requ�te peut �tre redirig�e</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyMaxForwards <var>nombre</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyMaxForwards -1</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>La directive <code class="directive">ProxyMaxForwards</code> permet de
sp�cifier le nombre maximum de mandataires � travers lesquels une
requ�te peut passer dans le cas o� la la requ�te ne contient pas
d'en-t�te <code>Max-Forwards</code>. Ceci permet de se pr�munir
contre les boucles infinies de mandataires ou contre les attaques de
type d�ni de service.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
ProxyMaxForwards 15
</pre>
</div>
<p>Notez que la d�finition de la directive
<code class="directive">ProxyMaxForwards</code> constitue une violation du
protocole HTTP/1.1 (RFC2616), qui interdit � un mandataire de
d�finir <code>Max-Forwards</code> si le client ne l'a pas fait
lui-m�me. Les versions pr�c�dentes d'Apache httpd la d�finissaient
syst�matiquement. Une valeur n�gative de
<code class="directive">ProxyMaxForwards</code>, y compris la valeur par
d�faut -1, implique un comportement compatible avec le protocole,
mais vous expose aux bouclages infinis.</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="ProxyPass" id="ProxyPass">ProxyPass</a> <a name="proxypass" id="proxypass">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>R�f�rencer des serveurs distants depuis
l'espace d'URLs du serveur local</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyPass [<var>chemin</var>] !|<var>url</var> [<var>cl�=valeur</var>
<var>[cl�=valeur</var> ...]] [nocanon] [interpolate] [noquery]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
</table>
<p>Cette directive permet de r�f�rencer des serveurs distants depuis
l'espace d'URLs du serveur local ; le serveur
local n'agit pas en tant que mandataire au sens conventionnel, mais
plut�t comme miroir du serveur distant. Le serveur local est
souvent nomm� <dfn>mandataire inverse</dfn> ou
<dfn>passerelle</dfn>. L'argument <var>chemin</var> est le nom d'un
chemin virtuel local ; <var>url</var> est une URL partielle pour le
serveur distant et ne doit pas contenir de cha�ne d'arguments.</p>
<div class="warning">En g�n�ral, la directive <code class="directive"><a href="#proxyrequests">ProxyRequests</a></code> doit �tre d�finie �
<strong>off</strong> lorsqu'on utilise la directive
<code class="directive">ProxyPass</code>.</div>
<p>Supposons que le serveur local a pour adresse
<code>http://example.com/</code> ; alors la ligne</p>
<pre class="prettyprint lang-config">
&lt;Location /mirror/foo/&gt;
ProxyPass http://backend.example.com/
&lt;/Location&gt;
</pre>
<p>va convertir en interne toute requ�te pour
<code>http://example.com/miroir/foo/bar</code> en une requ�te
mandat�e pour <code>http://backend.example.com/bar</code>.</p>
<p>La syntaxe alternative suivante est valide, bien qu'elle puisse
induire une d�gradation des performances lorsqu'elle est
pr�sente en tr�s grand nombre. Elle poss�de l'avantage de
permettre un contr�le dynamique via l'interface <a href="mod_proxy_balancer.html#balancer_manager">Balancer Manager</a> :</p>
<pre class="prettyprint lang-config">
ProxyPass /miroir/foo/ http://backend.example.com/
</pre>
<div class="warning">
<p>Si le premier argument se termine par un slash
<strong>/</strong>, il doit en �tre de m�me pour le second argument
et vice versa. Dans le cas contraire, il risque de manquer des
slashes n�cessaires dans la requ�te r�sultante vers le serveur
d'arri�re-plan et les r�sulats ne seront pas ceux attendus.
</p>
</div>
<p>Le drapeau <code>!</code> permet de soustraire un sous-r�pertoire
du mandat inverse, comme dans l'exemple suivant :</p>
<pre class="prettyprint lang-config">
&lt;Location /mirror/foo/&gt;
ProxyPass http://backend.example.com/
&lt;/Location&gt;
&lt;Location /mirror/foo/i&gt;
ProxyPass !
&lt;/Location&gt;
</pre>
<pre class="prettyprint lang-config">
ProxyPass /mirror/foo/i !
ProxyPass /mirror/foo http://backend.example.com
</pre>
<p>va mandater toutes les requ�tes pour <code>/miroir/foo</code>
vers <code>backend.example.com</code>, <em>sauf</em> les requ�tes
pour <code>/miroir/foo/i</code>.</p>
<div class="warning"><h3>Ordre de classement des directives ProxyPass</h3>
<p>Les directives <code class="directive"><a href="#proxypass">ProxyPass</a></code> et <code class="directive"><a href="#proxypassmatch">ProxyPassMatch</a></code> sont �valu�es dans
l'ordre de leur apparition dans le fichier de configuration. La
premi�re r�gle qui correspond s'applique. Vous devez donc en
g�n�ral classer les r�gles <code class="directive"><a href="#proxypass">ProxyPass</a></code> qui entrent en conflit de
l'URL la plus longue � la plus courte. Dans le cas contraire, les
r�gles situ�es apr�s une r�gle dont l'URL correspond au d�but de
leur propre URL seront ignor�es. Notez que tout ceci est en
relation avec le partage de workers. Par contre, on ne peut placer
qu'une seule directive <code class="directive"><a href="#proxypass">ProxyPass</a></code> dans une section
<code class="directive"><a href="/mod/core.html#location">Location</a></code>, et c'est la section
la plus sp�cifique qui l'emportera.</p>
<p>Pour les m�mes raisons, les exclusions doivent se situer
<em>avant</em> les directives <code class="directive">ProxyPass</code>
g�n�rales.</p>
</div>
<p>Depuis la version 2.1 du serveur HTTP Apache, mod_proxy supporte
les groupements de connexions vers un serveur d'arri�re-plan. Les
connexions cr��es � la demande peuvent �tre enregistr�es dans un
groupement pour une utilisation ult�rieure. La taille du groupe
ainsi que d'autres caract�ristiques peuvent �tre d�finies via la
directive <code class="directive">ProxyPass</code> au moyen de param�tres
<code>cl�=valeur</code> dont la description fait l'objet du tableau
ci-dessous.</p>
<p>Par d�faut, mod_proxy permet et met en r�serve le nombre maximum
de connexions pouvant �tre utilis�es simultan�ment par le processus
enfant concern� du serveur web. Le param�tre <code>max</code> permet
de r�duire cette valeur par d�faut. Le param�tre <code>ttl</code>,
quant � lui, permet de d�finir une dur�e de vie optionnelle ; les
connexions qui n'ont pas �t� utilis�es pendant au moins
<code>ttl</code> secondes seront ferm�es. <code>ttl</code> permet
aussi d'emp�cher l'utilisation d'une connexion susceptible d'�tre
ferm�e suite � une fin de vie de connexion persistante sur le
serveur d'arri�re-plan.</p>
<p>Le groupement de connexions est maintenu au niveau de chaque
processus enfant du serveur web, et <code>max</code>, ainsi que les
autres param�tres, ne font
l'objet d'aucune coordination entre les diff�rents processus
enfants, sauf si un seul processus enfant est autoris� par la
configuration ou la conception du module multi-processus (MPM).</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
ProxyPass /example http://backend.example.com max=20 ttl=120 retry=300
</pre>
</div>
<table class="bordered"><tr><th>Param�tres de BalancerMember</th></tr></table>
<table>
<tr><th>Param�tre</th>
<th>D�faut</th>
<th>Description</th></tr>
<tr><td>min</td>
<td>0</td>
<td>Nombre minimum d'entr�es dans le pool de connexions,
distinct du nombre de connexions effectif. La valeur par d�faut
ne doit �tre modifi�e que dans des circonstances particuli�res
o� la m�moire associ�e aux connexions avec le serveur
d'arri�re-plan doit �tre pr�allou�e ou r�serv�e dans le tas.</td></tr>
<tr><td>max</td>
<td>1...n</td>
<td>Nombre maximum de connexions autoris�es vers le serveur
d'arri�re-plan. La valeur par d�faut correspond au nombre de
threads par processus pour le MPM (Module Multi Processus)
actif. La valeur sera toujours 1 pour le MPM Prefork, alors
qu'elle d�pendra de la d�finition de la directive
<code class="directive">ThreadsPerChild</code> pour les autres MPMs.</td></tr>
<tr><td>smax</td>
<td>max</td>
<td>Les entr�es du pool de connexions conserv�es au del� de
cette limite sont lib�r�es au cours de certaines op�rations si
elles n'ont pas �t� utilis�es au cours de leur dur�e de vie,
d�finie par le param�tre <code>ttl</code>. Si l'entr�e du pool
de connexions est associ�e � une connexion, cette derni�re sera
ferm�e. La valeur par d�faut ne doit �tre modifi�e que dans des
circonstances particuli�res o� les entr�es du pool de connexions
et toutes connexions associ�es qui ont d�pass� leur dur�e de vie
doivent �tre lib�r�es ou ferm�es de mani�re plus autoritaire.</td></tr>
<tr><td>acquire</td>
<td>-</td>
<td>Cette cl� permet de d�finir le d�lai maximum d'attente pour
une connexion libre dans le jeu de connexions, en millisecondes.
S'il n'y a pas de connexion libre dans le jeu, Apache httpd renverra
l'�tat <code>SERVER_BUSY</code> au client.
</td></tr>
<tr><td>connectiontimeout</td>
<td>timeout</td>
<td>D�lai d'attente d'une connexion en secondes.
La dur�e en secondes pendant laquelle Apache httpd va attendre pour
l'�tablissement d'une connexion vers le serveur d'arri�re-plan.
Le d�lai peut �tre sp�cifi� en millisecondes en ajoutant le
suffixe ms.
</td></tr>
<tr><td>disablereuse</td>
<td>Off</td>
<td>Vous pouvez utiliser cette cl� pour forcer mod_proxy �
fermer imm�diatement une connexion vers le serveur
d'arri�re-plan apr�s utilisation, et ainsi d�sactiver le jeu de
connexions permanentes vers ce serveur. Ceci peut s'av�rer utile
dans des situations o� un pare-feu situ� entre Apache httpd et le
serveur d'arri�re-plan (quelque soit le protocole) interrompt
des connexions de mani�re silencieuse, ou lorsque le serveur
d'arri�re-plan lui-m�me est accessible par rotation de DNS
(round-robin DNS). Pour d�sactiver la r�utilisation du jeu de
connexions, d�finissez cette cl� � <code>On</code>.
</td></tr>
<tr><td>flushpackets</td>
<td>off</td>
<td>Permet de d�finir si le module mandataire doit vider
automatiquement le tampon de sortie apr�s chaque tron�on de
donn�es. 'off' signifie que le tampon sera vid� si n�cessaire,
'on' que le tampon sera vid� apr�s chaque envoi d'un
tron�on de donn�es, et 'auto' que le tampon sera vid� apr�s un
d�lai de 'flushwait' millisecondes si aucune entr�e n'est re�ue.
Actuellement, cette cl� n'est support�e que par AJP.
</td></tr>
<tr><td>flushwait</td>
<td>10</td>
<td>Le d�lai d'attente pour une entr�e additionnelle, en
millisecondes, avant le vidage du tampon en sortie dans le cas
o� 'flushpackets' est � 'auto'.
</td></tr>
<tr><td>iobuffersize</td>
<td>8192</td>
<td>Permet de d�finir la taille du tampon d'entr�es/sorties du
bloc-notes interne. Cette cl� vous permet d'outrepasser la
directive <code class="directive">ProxyIOBufferSize</code> pour un
serveur cible sp�cifique. La valeur doit �tre au minimum 512 ou d�finie
� 0 pour la valeur par d�faut du syst�me de 8192.
</td></tr>
<tr><td>keepalive</td>
<td>Off</td>
<td><p>Cette cl� doit �tre utilis�e lorsque vous avez un pare-feu
entre Apache httpd et le serveur d'arri�re-plan, et si ce dernier tend
� interrompre les connexions inactives. Cette cl� va faire en
sorte que le syst�me d'exploitation envoie des messages
<code>KEEP_ALIVE</code> sur chacune des connexions inactives et
ainsi �viter la fermeture de la connexion par le pare-feu.
Pour conserver les connexions persistantes, definissez cette
propri�t� � <code>On</code>.</p>
<p>La fr�quence de v�rification des connexions TCP persistantes
initiale et subs�quentes d�pend de la configuration globale de l'OS,
et peut atteindre 2 heures. Pour �tre utile, la fr�quence configur�e
dans l'OS doit �tre inf�rieure au seuil utilis� par le pare-feu.</p>
</td></tr>
<tr><td>lbset</td>
<td>0</td>
<td>D�finit le groupe de r�partition de charge dont le serveur cible
est membre. Le r�partiteur de charge va essayer tous les membres
d'un groupe de r�partition de charge de num�ro inf�rieur avant
d'essayer ceux dont le groupe poss�de un num�ro sup�rieur.
</td></tr>
<tr><td>ping</td>
<td>0</td>
<td>Avec la cl� Ping, le serveur web va "tester" la connexion
vers le serveur d'arri�re-plan avant de transmettre la requ�te.
Avec AJP, <code class="module"><a href="/mod/mod_proxy_ajp.html">mod_proxy_ajp</a></code> envoie une requ�te
<code>CPING</code> sur la connexion ajp13 (impl�ment� sur Tomcat
3.3.2+, 4.1.28+ et 5.0.13+). Avec HTTP,
<code class="module"><a href="/mod/mod_proxy_http.html">mod_proxy_http</a></code> envoie <code>100-Continue</code>
au serveur d'arri�re-plan (seulement avecHTTP/1.1 - pour les
serveurs d'arri�re-plan non HTTP/1.1, cette cl� ne produit
aucun effet). Dans les deux cas, ce param�tre correspond au
d�lai en secondes pour l'attente de la r�ponse. Cette
fonctionnalit� a �t� ajout�e pour �viter les probl�mes avec les
serveurs d'arri�re-plan bloqu�s ou surcharg�s.
Le trafic
r�seau peut s'en trouver augment� en fonctionnement normal, ce
qui peut poser probl�me, mais peut s'en trouver diminu� dans les
cas o� les noeuds de cluster sont arr�t�s ou
surcharg�s. Le d�lai peut
aussi �tre d�fini en millisecondes en ajoutant le suffixe
ms.
</td></tr>
<tr><td>receivebuffersize</td>
<td>0</td>
<td>D�finit la taille du tampon r�seau explicite (TCP/IP) pour
les connexions mandat�es. Cette cl� vous permet d'outrepasser la
directive <code class="directive">ProxyReceiveBufferSize</code> pour un
serveur cible sp�cifique. Sa valeur doit �tre au minimum 512 ou d�finie
� 0 pour la valeur par d�faut du syst�me.
</td></tr>
<tr><td>redirect</td>
<td>-</td>
<td>Route pour la redirection du serveur cible. Cette valeur est en
g�n�ral d�finie dynamiquement pour permettre une suppression
s�curis�e du noeud du cluster. Si cette cl� est d�finie, toutes
les requ�tes sans identifiant de session seront redirig�es vers
le membre de groupe de r�partition de charge dont la route
correspond � la valeur de la cl�.
</td></tr>
<tr><td>retry</td>
<td>60</td>
<td>D�lai entre deux essais du serveur cible du jeu de connexions en
secondes. Si le serveur cible du jeu de connexions vers le serveur
d'arri�re-plan est dans un �tat d'erreur, Apache httpd ne redirigera
pas de requ�te vers ce serveur avant l'expiration du d�lai
sp�cifi�. Ceci permet d'arr�ter le serveur d'arri�re-plan pour
maintenance, et de le remettre en ligne plus tard. Une valeur de
0 implique de toujours essayer les serveurs cibles dans un �tat d'erreur
sans d�lai.
</td></tr>
<tr><td>route</td>
<td>-</td>
<td>La route du serveur cible lorsqu'il est utilis� au sein d'un
r�partiteur de charge. La route est une valeur ajout�e �
l'identifiant de session.
</td></tr>
<tr><td>status</td>
<td>-</td>
<td>Valeur constitu�e d'une simple lettre et d�finissant l'�tat
initial de ce serveur cible.
<table>
<tr><td>D: le serveur cible est d�sactiv� et n'accepte aucune requ�te.</td></tr>
<tr><td>S: le serveur cible est arr�t�.</td></tr>
<tr><td>I: le serveur cible est en mode "erreurs ignor�es",
et sera toujours consid�r� comme disponible.</td></tr>
<tr><td>H: le serveur cible est en mode d'attente et ne sera
utilis� que si aucun autre serveur n'est disponible.</td></tr>
<tr><td>E: le serveur cible est en erreur.</td></tr>
<tr><td>N: le serveur cible est en mode vidage, n'acceptera que
les sessions persistantes qui lui appartiennent, et refusera
toutes les autres requ�tes.</td></tr>
</table>
Une valeur d'�tat peut �tre d�finie (ce qui
correspond au comportement par d�faut) en pr�fixant la valeur
par '+', ou annul�e en pr�fixant la valeur par '-'. Ainsi, la
valeur 'S-E' d�finit l'�tat de ce serveur cible � "arr�t�" et supprime
le drapeau "en-erreur".
</td></tr>
<tr><td>timeout</td>
<td><code class="directive"><a href="#proxytimeout">ProxyTimeout</a></code></td>
<td>D�lai d'attente de la connexion en secondes. Le nombre de
secondes pendant lesquelles Apache httpd attend l'envoi de
donn�es vers le serveur d'arri�re-plan.
</td></tr>
<tr><td>ttl</td>
<td>-</td>
<td>Dur�e de vie des connexions inactives et des entr�es du pool
de connexions associ�es en secondes. Une fois cette
limite atteinte, une connexion ne sera pas r�utilis�e ; elle
sera ferm�e apr�s un d�lai variable.
</td></tr>
</table>
<p>Si l'URL de la directive Proxy d�bute par
<code>balancer://</code> (par exemple:
<code>balancer://cluster</code>, toute information relative au
chemin est ignor�e), alors un serveur cible virtuel ne communiquant pas
r�ellement avec le serveur d'arri�re-plan sera cr��. Celui-ci sera
en fait responsable de la gestion de plusieurs serveurs cibles "r�els". Dans
ce cas, un jeu de param�tres particuliers s'applique � ce serveur cible
virtuel. Voir <code class="module"><a href="/mod/mod_proxy_balancer.html">mod_proxy_balancer</a></code> pour plus
d'informations � propos du fonctionnement du r�partiteur de
charge.
</p>
<table class="bordered"><tr><th>Param�tres du r�partiteur</th></tr></table>
<table>
<tr><th>Param�tre</th>
<th>D�faut</th>
<th>Description</th></tr>
<tr><td>lbmethod</td>
<td>byrequests</td>
<td>M�thode de r�partition de charge utilis�e. Permet de
s�lectionner la m�thode de planification de la r�partition de
charge � utiliser. La valeur est soit <code>byrequests</code>,
pour effectuer un d�compte de requ�tes pond�r�es, soit
<code>bytraffic</code>, pour effectuer une r�partition en
fonction du d�compte des octets transmis, soit
<code>bybusyness</code>, pour effectuer une r�partition en
fonction des requ�tes en attente. La valeur par d�faut est
<code>byrequests</code>.
</td></tr>
<tr><td>maxattempts</td>
<td>1 de moins que le nombre de workers, ou 1 avec un seul
worker</td>
<td>Nombre maximum d'�checs avant abandon.
</td></tr>
<tr><td>nofailover</td>
<td>Off</td>
<td>Si ce param�tre est d�fini � <code>On</code>, la session va
s'interrompre si le serveur cible est dans un �tat d'erreur ou
d�sactiv�. D�finissez ce param�tre � On si le serveur
d'arri�re-plan ne supporte pas la r�plication de session.
</td></tr>
<tr><td>stickysession</td>
<td>-</td>
<td>Nom de session persistant du r�partiteur. La valeur est
g�n�ralement du style <code>JSESSIONID</code> ou
<code>PHPSESSIONID</code>, et d�pend du serveur d'application
d'arri�re-plan qui supporte les sessions. Si le serveur
d'application d'arri�re-plan utilise des noms diff�rents pour
les cookies et les identifiants cod�s d'URL (comme les
conteneurs de servlet), s�parez-les par le caract�re '|'. La
premi�re partie contient le cookie et la seconde le chemin.
</td></tr>
<tr><td>stickysessionsep</td>
<td>"."</td>
<td>Permet de d�finir le caract�re de s�paration dans le cookie
de session. En effet, certains serveurs d'application d'arri�re-plan
n'utilisent pas le '.' comme caract�re de s�paration. Par
exemple, le serveur Oracle Weblogic utilise le caract�re '!'.
Cette option permet donc de d�finir le caract�re de s�paration �
une valeur appropri�e. Si elle est d�finie � 'Off', aucun
caract�re de s�paration ne sera utilis�.
</td></tr>
<tr><td>scolonpathdelim</td>
<td>Off</td>
<td>Si ce param�tre est d�fini � <code>On</code>, le caract�re
';' sera utilis� comme s�parateur de chemin de session
persistante additionnel. Ceci permet principalement de simuler
le comportement de mod_jk lorsqu'on utilise des chemins du style
<code>JSESSIONID=6736bcf34;foo=aabfa</code>.
</td></tr>
<tr><td>timeout</td>
<td>0</td>
<td>D�lai du r�partiteur en secondes. Si ce param�tre est
d�fini, sa valeur correspond � la dur�e maximale d'attente pour
un serveur cible libre. Le comportement par d�faut est de ne pas
attendre.
</td></tr>
<tr><td>failonstatus</td>
<td>-</td>
<td>Une liste de codes d'�tat HTTP s�par�s par des virgules. Si
ce param�tre est pr�sent, le worker se mettra en erreur si le
serveur d'arri�re-plan renvoie un des codes d'�tat sp�cifi�s
dans la liste. La r�cup�ration du worker s'effectue comme dans
le cas des autres erreurs de worker.
</td></tr>
<tr><td>nonce</td>
<td>&lt;auto&gt;</td>
<td>Le nombre � usage unique de protection utilis� dans la page
de l'application <code>balancer-manager</code>. Par d�faut, la
protection de la page est assur�e par un nombre � usage unique
automatique � base d'UUID. Si une valeur est pr�cis�e, elle sera
utilis�e comme nombre � usage unique. La valeur
<code>None</code> d�sactive la v�rification du nombre � usage
unique.
<div class="note"><h3>Note</h3>
<p>En plus du nombre � usage unique, la page de l'application
<code>balancer-manager</code> peut �tre prot�g�e par une ACL.</p>
</div>
</td></tr>
<tr><td>growth</td>
<td>0</td>
<td>Nombre de membres suppl�mentaires que l'on peut ajouter � ce
r�partiteur en plus de ceux d�finis au niveau de la
configuration.
</td></tr>
<tr><td>forcerecovery</td>
<td>On</td>
<td>Force la relance imm�diate de tous les membres sans tenir
compte de leur param�tre retry dans le cas o� ils sont tous en
�tat d'erreur. Il peut cependant arriver qu'un membre d�j�
surcharg� entre dans une situation critique si la relance de
tous les membres est forc�e sans tenir compte du param�tre retry
de chaque membre. Dans ce cas, d�finissez ce param�tre �
<code>Off</code>.
</td></tr>
</table>
<p>Exemple de configuration d'un r�partiteur de charge</p>
<pre class="prettyprint lang-config">
ProxyPass /special-area http://special.example.com smax=5 max=10
ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On
&lt;Proxy balancer://mycluster&gt;
BalancerMember ajp://1.2.3.4:8009
BalancerMember ajp://1.2.3.5:8009 loadfactor=20
# Less powerful server, don't send as many requests there,
BalancerMember ajp://1.2.3.6:8009 loadfactor=5
&lt;/Proxy&gt;
</pre>
<p>Configuration d'un serveur cible de r�serve qui ne sera utilis� que si
aucun autre serveur cible n'est disponible</p>
<pre class="prettyprint lang-config">
ProxyPass / balancer://hotcluster/
&lt;Proxy balancer://hotcluster&gt;
BalancerMember ajp://1.2.3.4:8009 loadfactor=1
BalancerMember ajp://1.2.3.5:8009 loadfactor=2
# The server below is on hot standby
BalancerMember ajp://1.2.3.6:8009 status=+H
ProxySet lbmethod=bytraffic
&lt;/Proxy&gt;
</pre>
<p>Normalement, mod_proxy va mettre sous leur forme canonique les
URLs trait�es par ProxyPass. Mais ceci peut �tre incompatible avec
certains serveurs d'arri�re-plan, et en particulier avec ceux qui
utilisent <var>PATH_INFO</var>. Le mot-cl� optionnel
<var>nocanon</var> modifie ce comportement et permet de transmettre
le chemin d'URL sous sa forme brute au serveur d'arri�re-plan. Notez
que ceci peut affecter la s�curit� de votre serveur d'arri�re-plan,
car la protection limit�e contre les attaques � base d'URL que
fournit le mandataire est alors supprim�e.</p>
<p>Le mot-cl� optionnel <var>interpolate</var> (disponible depuis
httpd 2.2.9), en combinaison avec la directive
<code class="directive">ProxyPassInterpolateEnv</code>, permet � ProxyPass
d'interpoler les variables d'environnement � l'aide de la syntaxe
<var>${VARNAME}</var>. Notez que de nombreuses variables
d'environnement standard d�riv�es de CGI n'existeront pas lorsque
l'interpolation se produit ; vous devrez alors encore avoir avoir
recours � <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code> pour des r�gles
complexes.</p>
<p>Par d�faut, mod_proxy inclut la cha�ne de param�tres lors de la
g�n�ration de la variable d'environnement
<var>SCRIPT_FILENAME</var>. Le mot-cl� optionnel <var>noquery</var>
(disponible � partir de la version 2.4.1) permet d'exclure cette
cha�ne.</p>
<p>Lorsque la directive ProxyPass est utilis�e � l'int�rieur d'une
section <code class="directive"><a href="/mod/core.html#location">&lt;Location&gt;</a></code>, le premier argument est omis et le r�pertoire
local est obtenu � partir de la section <code class="directive"><a href="/mod/core.html#location">&lt;Location&gt;</a></code>. Il en sera de m�me dans une
section <code class="directive"><a href="/mod/core.html#locationmatch">&lt;LocationMatch&gt;</a></code> ; cependant, ProxyPass
n'interpr�te pas les expressions rationnelles, et il sera ici
n�cessaire d'utiliser la directive
<code class="directive">ProxyPassMatch</code> � la place.</p>
<p>Cette directive ne peut pas �tre plac�e dans une section
<code class="directive"><a href="/mod/core.html#directory">&lt;Directory&gt;</a></code> ou
<code class="directive"><a href="/mod/core.html#files">&lt;Files&gt;</a></code>.</p>
<p>Si vous avez besoin d'un configuration de mandataire inverse plus
souple, reportez-vous � la documentaion de la directive <code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> et son drapeau
<code>[P]</code>.</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="ProxyPassInterpolateEnv" id="ProxyPassInterpolateEnv">ProxyPassInterpolateEnv</a> <a name="proxypassinterpolateenv" id="proxypassinterpolateenv">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active l'interpolation des variables d'environnement dans
les configurations de mandataires inverses</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyPassInterpolateEnv On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyPassInterpolateEnv Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
</table>
<p>Cette directive, ainsi que l'argument <var>interpolate</var> des
directives <code class="directive">ProxyPass</code>,
<code class="directive">ProxyPassReverse</code>,
<code class="directive">ProxyPassReverseCookieDomain</code> et
<code class="directive">ProxyPassReverseCookiePath</code>, permet de
configurer dynamiquement un mandataire inverse � l'aide de
variables d'environnement, ces derni�res pouvant �tre d�finies par un
autre module comme <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code>. Elle affecte les
directives <code class="directive">ProxyPass</code>,
<code class="directive">ProxyPassReverse</code>,
<code class="directive">ProxyPassReverseCookieDomain</code>, et
<code class="directive">ProxyPassReverseCookiePath</code>, en leur indiquant
de remplacer la cha�ne <code>${nom_var}</code> dans les directives
de configuration par la valeur de la variable d'environnement
<code>nom_var</code> (si l'option <var>interpolate</var> est
sp�cifi�e).</p>
<p>Conservez cette directive � off (pour les performances du
serveur), sauf si vous en avez r�ellement besoin.</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="ProxyPassMatch" id="ProxyPassMatch">ProxyPassMatch</a> <a name="proxypassmatch" id="proxypassmatch">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fait correspondre des serveurs distants dans l'espace d'URL
du serveur local en utilisant des expressions rationnelles</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyPassMatch [<var>regex</var>] !|<var>url</var>
[<var>cl�=valeur</var>
<var>[cl�=valeur</var> ...]]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
</table>
<p>Cette directive est identique � la directive <code class="directive"><a href="#proxypass">ProxyPass</a></code>, mais fait usage des
expressions rationnelles, au lieu d'une simple comparaison de
pr�fixes. L'expression rationnelle sp�cifi�e est compar�e �
l'<var>url</var>, et si elle correspond, le serveur va substituer
toute correspondance entre parenth�ses dans la cha�ne donn�e et
l'utiliser comme nouvelle <var>url</var>.</p>
<p>Supposons que le serveur local a pour adresse
<code>http://example.com/</code> ; alors</p>
<pre class="prettyprint lang-config">
ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com$1
</pre>
<p>va provoquer la conversion interne de la requ�te locale
<code>http://example.com/foo/bar.gif</code> en une requ�te mandat�e
pour <code>http://backend.example.com/foo/bar.gif</code>.</p>
<div class="note"><h3>Note</h3>
<p>L'argument URL doit pouvoir �tre interpr�t� en tant qu'URL
<em>avant</em> les substitutions d'expressions rationnelles (et
doit aussi l'�tre apr�s). Ceci limite les correspondances que vous
pouvez utiliser. Par exemple, si l'on avait utilis�</p>
<pre class="prettyprint lang-config">
ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com:8000$1
</pre>
<p>dans l'exemple pr�c�dent, nous aurions provoqu� une erreur de
syntaxe au d�marrage du serveur. C'est une bogue (PR 46665 dans
ASF bugzilla), et il est possible de la contourner en reformulant
la correspondance :</p>
<pre class="prettyprint lang-config">
ProxyPassMatch ^/(.*\.gif)$ http://backend.example.com:8000/$1
</pre>
</div>
<p>Le drapeau <code>!</code> vous permet de ne pas mandater un
sous-r�pertoire donn�.</p>
<p>Dans une section <code class="directive"><a href="/mod/core.html#locationmatch">&lt;LocationMatch&gt;</a></code>, le premier argument est
omis et l'expression rationnelle est obtenue � partir de la directive
<code class="directive"><a href="/mod/core.html#locationmatch">&lt;LocationMatch&gt;</a></code>.</p>
<p>Si vous avez besoin d'une configuration du mandataire inverse
plus flexible, voyez la directive <code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> avec le drapeau
<code>[P]</code>.</p>
<div class="warning">
<h3>Avertissement � propos de la s�curit�</h3>
<p>Lors de la construction de l'URL cible de la r�gle, il convient
de prendre en compte l'impact en mati�re de s�curit� qu'aura le
fait de permettre au client d'influencer le jeu d'URLs pour
lesquelles votre serveur agira en tant que mandataire.
Assurez-vous que la partie protocole://nom-serveur de l'URL soit
fixe, ou ne permette pas au client de l'influencer induement.</p>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ProxyPassReverse" id="ProxyPassReverse">ProxyPassReverse</a> <a name="proxypassreverse" id="proxypassreverse">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Ajuste l'URL dans les en-t�tes de la r�ponse HTTP envoy�e
par un serveur mandat� en inverse</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyPassReverse [<var>chemin</var>] <var>url</var>
[<var>interpolate</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
</table>
<p>Cette directive permet de faire en sorte qu'Apache httpd ajuste l'URL
dans les en-t�tes <code>Location</code>,
<code>Content-Location</code> et <code>URI</code> des r�ponses de
redirection HTTP. Ceci est essentiel lorsqu'Apache httpd est utilis� en
tant que mandataire inverse (ou passerelle), afin d'�viter de
court-circuiter le mandataire inverse suite aux redirections HTTP
sur le serveur d'arri�re-plan qui restent derri�re le mandataire
inverse.</p>
<p>Seuls les en-t�tes de r�ponse HTTP sp�cialement mentionn�s
ci-dessus seront r��crits. Apache httpd ne r��crira ni les autres en-t�tes
de r�ponse, ni par d�faut les r�f�rences d'URLs dans les pages HTML. Cela
signifie que dans le cas o� un contenu mandat� contient des
r�f�rences � des URLs absolues, elles court-circuiteront le
mandataire. Pour r��crire un contenu HTML afin qu'il corresponde au
mandataire, vous devez charger et activer le module
<code class="module"><a href="/mod/mod_proxy_html.html">mod_proxy_html</a></code>.
</p>
<p><var>chemin</var> est le nom d'un chemin virtuel local.
<var>url</var> est une URL partielle pour le serveur distant - ils
sont utilis�s de la m�me fa�on qu'avec la directive <code class="directive"><a href="#proxypass">ProxyPass</a></code>.</p>
<p>Supposons par exemple que le serveur local a pour adresse
<code>http://example.com/</code> ; alors</p>
<pre class="prettyprint lang-config">
ProxyPass /mirror/foo/ http://backend.example.com/
ProxyPassReverse /mirror/foo/ http://backend.example.com/
ProxyPassReverseCookieDomain backend.example.com public.example.com
ProxyPassReverseCookiePath / /mirror/foo/
</pre>
<p>ne va pas seulement provoquer la conversion interne d'une requ�te
locale pour <code>http://example.com/miroir/foo/bar</code> en une
requ�te mandat�e pour <code>http://backend.example.com/bar</code>
(la fonctionnalit� fournie par <code>ProxyPass</code>). Il va
aussi s'occuper des redirections que le serveur
<code>backend.example.com</code> envoie : lorsque
<code>http://backend.example.com/bar</code> est redirig� par
celui-ci vers <code>http://backend.example.com/quux</code>, Apache
httpd corrige ceci en <code>http://example.com/miroir/foo/quux</code>
avant de faire suivre la redirection HTTP au client. Notez que le
nom d'h�te utilis� pour construire l'URL est choisi en respectant la
d�finition de la directive <code class="directive"><a href="/mod/core.html#usecanonicalname">UseCanonicalName</a></code>.</p>
<p>Notez que la directive <code class="directive">ProxyPassReverse</code>
peut aussi �tre utilis�e en conjonction avec la fonctionnalit�
pass-through (<code>RewriteRule ... [P]</code>) du module
<code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code>, car elle ne d�pend pas d'une directive
<code class="directive"><a href="#proxypass">ProxyPass</a></code>
correspondante.</p>
<p>Le mot-cl� optionnel <var>interpolate</var> (disponible depuis
httpd 2.2.9), utilis� en combinaison avec la directive
<code class="directive">ProxyPassInterpolateEnv</code>, permet
l'interpolation des variables d'environnement sp�cifi�es en
utilisant le format <var>${VARNAME}</var>.
</p>
<p>Lorsque cette directive est utilis�e dans une section <code class="directive"><a href="/mod/core.html#location">&lt;Location&gt;</a></code>, le premier
argument est omis et le r�pertoire local est obtenu � partir de
l'argument de la directive <code class="directive"><a href="/mod/core.html#location">&lt;Location&gt;</a></code>. Il en est de m�me � l'int�rieur
d'une section <code class="directive"><a href="/mod/core.html#locationmatch">&lt;LocationMatch&gt;</a></code>, mais le r�sultat ne sera
probablement pas celui attendu car ProxyPassReverse va interpr�ter
l'expression rationnelle litt�ralement comme un chemin ; si besoin
est dans ce cas, d�finissez la directive ProxyPassReverse en dehors
de la section, ou dans une section <code class="directive"><a href="/mod/core.html#location">&lt;Location&gt;</a></code> s�par�e.</p>
<p>Cette directive ne peut pas �tre plac�e dans une section
<code class="directive"><a href="/mod/core.html#directory">&lt;Directory&gt;</a></code> ou
<code class="directive"><a href="/mod/core.html#files">&lt;Files&gt;</a></code>.</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="ProxyPassReverseCookieDomain" id="ProxyPassReverseCookieDomain">ProxyPassReverseCookieDomain</a> <a name="proxypassreversecookiedomain" id="proxypassreversecookiedomain">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Ajuste la cha�ne correspondant au domaine dans les en-t�tes
Set-Cookie en provenance d'un serveur mandat�</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyPassReverseCookieDomain <var>domaine-interne</var>
<var>domaine-public</var> [<var>interpolate</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
</table>
<p>L'utilisation de cette directive est similaire � celle de la
directive <code class="directive"><a href="#proxypassreverse">ProxyPassReverse</a></code>,
mais au lieu de r��crire des en-t�tes qui contiennent des URLs, elle
r��crit la cha�ne correspondant au domaine dans les en-t�tes
<code>Set-Cookie</code>.</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="ProxyPassReverseCookiePath" id="ProxyPassReverseCookiePath">ProxyPassReverseCookiePath</a> <a name="proxypassreversecookiepath" id="proxypassreversecookiepath">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Ajuste la cha�ne correspondant au chemin dans les en-t�tes
Set-Cookie en provenance d'un serveur mandat�</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyPassReverseCookiePath <var>chemin-interne</var>
<var>chemin-public</var> [<var>interpolate</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
</table>
<p>
Cette directive s'av�re utile en conjonction avec la directive
<code class="directive"><a href="#proxypassreverse">ProxyPassReverse</a></code> dans les
situations o� les chemins d'URL d'arri�re-plan correspondent � des
chemins publics sur le mandataire inverse. Cette directive permet de
r��crire la cha�ne <code>path</code> dans les en-t�tes
<code>Set-Cookie</code>. Si le d�but du chemin du cookie correspond �
<var>chemin-interne</var>, le chemin du cookie sera remplac� par
<var>chemin-public</var>.
</p><p>
Dans l'exemple fourni avec la directive <code class="directive"><a href="#proxypassreverse">ProxyPassReverse</a></code>, la directive :
</p>
<pre class="prettyprint lang-config">
ProxyPassReverseCookiePath / /mirror/foo/
</pre>
<p>
va r��crire un cookie poss�dant un chemin d'arri�re-plan <code>/</code>
(ou <code>/example</code> ou en fait tout chemin)
en <code>/mirror/foo/</code>..
</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="ProxyPreserveHost" id="ProxyPreserveHost">ProxyPreserveHost</a> <a name="proxypreservehost" id="proxypreservehost">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Utilise l'en-t�te de requ�te entrante Host pour la requ�te
du mandataire</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyPreserveHost On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyPreserveHost Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit�:</a></th><td>Utilisable
dans un contexte de r�pertoire depuis la version 2.3.3.</td></tr>
</table>
<p>Lorsqu'elle est activ�e, cette directive va transmettre l'en-t�te
Host: de la requ�te entrante vers le serveur mandat�, au lieu du nom
d'h�te sp�cifi� par la directive <code class="directive">ProxyPass</code>.</p>
<p>Cette directive est habituellement d�finie � <code>Off</code>.
Elle est principalement utile dans les configurations particuli�res
comme l'h�bergement virtuel mandat� en masse � base de nom, o�
l'en-t�te Host d'origine doit �tre �valu� par le serveur
d'arri�re-plan.</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="ProxyReceiveBufferSize" id="ProxyReceiveBufferSize">ProxyReceiveBufferSize</a> <a name="proxyreceivebuffersize" id="proxyreceivebuffersize">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Taille du tampon r�seau pour les connexions mandat�es HTTP
et FTP</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyReceiveBufferSize <var>octets</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyReceiveBufferSize 0</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>La directive <code class="directive">ProxyReceiveBufferSize</code> permet
de sp�cifier une taille de tampon r�seau explicite (TCP/IP) pour les
connexions mandat�es HTTP et FTP, afin d'am�liorer le d�bit de
donn�es. Elle doit �tre sup�rieure � <code>512</code> ou d�finie �
<code>0</code> pour indiquer que la taille de tampon par d�faut du
syst�me doit �tre utilis�e.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
ProxyReceiveBufferSize 2048
</pre>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ProxyRemote" id="ProxyRemote">ProxyRemote</a> <a name="proxyremote" id="proxyremote">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Mandataire distant � utiliser pour traiter certaines
requ�tes</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyRemote <var>comparaison</var> <var>serveur-distant</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>Cette directive permet de d�finir des mandataires distants pour
ce mandataire. <var>comparaison</var> est soit le nom d'un protocole
que supporte le serveur distant, soit une URL partielle pour
laquelle le serveur distant devra �tre utilis�, soit <code>*</code>
pour indiquer que le serveur distant doit �tre utilis� pour toutes
les requ�tes. <var>serveur-distant</var> est une URL partielle
correspondant au serveur distant. Syntaxe : </p>
<div class="example"><p><code>
<dfn>serveur-distant</dfn> =
<var>protocole</var>://<var>nom-serveur</var>[:<var>port</var>]
</code></p></div>
<p><var>protocole</var> est effectivement le protocole � utiliser
pour communiquer avec le serveur distant ; ce module ne supporte que
<code>http</code> et <code>https</code>. Lorsqu'on utilise
<code>https</code>, les requ�tes sont redirig�es par le mandataire
distant en utilisant la m�thode HTTP CONNECT.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
ProxyRemote http://goodguys.example.com/ http://mirrorguys.example.com:8000
ProxyRemote * http://cleverproxy.localdomain
ProxyRemote ftp http://ftpproxy.mydomain:8080
</pre>
</div>
<p>Dans la derni�re ligne de l'exemple, le mandataire va faire
suivre les requ�tes FTP, encapsul�es dans une autre requ�te mandat�e
HTTP, vers un autre mandataire capable de les traiter.</p>
<p>Cette directive supporte aussi les configurations de mandataire
inverse - un serveur web d'arri�re-plan peut �tre int�gr� dans
l'espace d'URL d'un serveur virtuel, m�me si ce serveur est cach�
par un autre mandataire direct.</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="ProxyRemoteMatch" id="ProxyRemoteMatch">ProxyRemoteMatch</a> <a name="proxyremotematch" id="proxyremotematch">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le mandataire distant � utiliser pour traiter les requ�tes
correspondant � une expression rationnelle</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyRemoteMatch <var>regex</var> <var>serveur-distant</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>La directive <code class="directive">ProxyRemoteMatch</code> est
identique � la directive <code class="directive"><a href="#proxyremote">ProxyRemote</a></code>, � l'exception du
premier argument qui est une <a class="glossarylink" href="/glossary.html#regex" title="voir glossaire">expression
rationnelle</a> � mettre en correspondance avec l'URL de la
requ�te.</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="ProxyRequests" id="ProxyRequests">ProxyRequests</a> <a name="proxyrequests" id="proxyrequests">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active la fonctionnalit� (standard) de mandataire
direct</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyRequests On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyRequests Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>Cette directive permet d'activer/d�sactiver la fonctionnalit� de
serveur mandataire direct d'Apache httpd. D�finir ProxyRequests �
<code>Off</code> n'interdit pas l'utilisation de la directive
<code class="directive"><a href="#proxypass">ProxyPass</a></code>.</p>
<p>Pour une configuration typique de mandataire inverse ou
passerelle, cette directive doit �tre d�finie �
<code>Off</code>.</p>
<p>Afin d'activer la fonctionnalit� de mandataire pour des sites
HTTP et/ou FTP, les modules <code class="module"><a href="/mod/mod_proxy_http.html">mod_proxy_http</a></code> et/ou
<code class="module"><a href="/mod/mod_proxy_ftp.html">mod_proxy_ftp</a></code> doivent �galement �tre charg�s dans le
serveur.</p>
<p>Pour activer la fonctionnalit� de mandataire sur les sites chiffr�s en HTTPS, le module
<code class="module"><a href="/mod/mod_proxy_connect.html">mod_proxy_connect</a></code> doit �galement �tre charg� dans le serveur.</p>
<div class="warning"><h3>Avertissement</h3>
<p>N'activez pas la fonctionnalit� de mandataire avec la directive
<code class="directive"><a href="#proxyrequests">ProxyRequests</a></code> avant
d'avoir <a href="#access">s�curis� votre serveur</a>. Les serveurs
mandataires ouverts sont dangereux non seulement pour votre
r�seau, mais aussi pour l'Internet au sens large.</p>
</div>
<h3>Voir aussi</h3>
<ul>
<li><a href="#forwardreverse">Mandataires/Passerelles directs et
inverses</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ProxySet" id="ProxySet">ProxySet</a> <a name="proxyset" id="proxyset">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�finit diff�rents param�tres relatifs � la r�partition de
charge des mandataires et aux membres des groupes de r�partition de
charge</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxySet <var>url</var> <var>cl�=valeur [cl�=valeur ...]</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r�pertoire</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
</table>
<p>Cette directive propose une m�thode alternative pour d�finir tout
param�tre relatif aux r�partiteurs de charge et serveurs cibles de
mandataires normalement d�finis via la directive <code class="directive"><a href="#proxypass">ProxyPass</a></code>. Si elle se trouve dans un
conteneur <code>&lt;Proxy <var>url de r�partiteur|url de
serveur cible</var>&gt;</code>, l'argument <var>url</var> n'est pas
n�cessaire. Comme effet de bord, le r�partiteur ou serveur cible respectif
est cr��. Ceci peut s'av�rer utile pour la mise en oeuvre d'un
mandataire inverse via une directive <code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> au lieu de <code class="directive"><a href="#proxypass">ProxyPass</a></code>.</p>
<div class="example"><pre class="prettyprint lang-config">
&lt;Proxy balancer://hotcluster&gt;
BalancerMember http://www2.example.com:8080 loadfactor=1
BalancerMember http://www3.example.com:8080 loadfactor=2
ProxySet lbmethod=bytraffic
&lt;/Proxy&gt;
</pre>
</div>
<pre class="prettyprint lang-config">
&lt;Proxy http://backend&gt;
ProxySet keepalive=On
&lt;/Proxy&gt;
</pre>
<pre class="prettyprint lang-config">
ProxySet balancer://foo lbmethod=bytraffic timeout=15
</pre>
<pre class="prettyprint lang-config">
ProxySet ajp://backend:7001 timeout=15
</pre>
<div class="warning"><h3>Avertissement</h3>
<p>Gardez � l'esprit qu'une m�me cl� de param�tre peut avoir
diff�rentes significations selon qu'elle s'applique � un
r�partiteur ou � un serveur cible, et ceci est illustr� par les deux
exemples pr�c�dents o� il est question d'un timeout.</p>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ProxySourceAddress" id="ProxySourceAddress">ProxySourceAddress</a> <a name="proxysourceaddress" id="proxysourceaddress">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�finit l'adresse IP locale pour les connexions mandat�es
sortantes</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxySourceAddress <var>adresse</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit�:</a></th><td>Disponible depuis la version 2.3.9</td></tr>
</table>
<p>Cette directive permet de d�finir une adresse IP locale
sp�cifique � laquelle faire r�f�rence lors d'une connexion � un
serveur d'arri�re-plan.</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="ProxyStatus" id="ProxyStatus">ProxyStatus</a> <a name="proxystatus" id="proxystatus">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Affiche l'�tat du r�partiteur de charge du mandataire dans
mod_status</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyStatus Off|On|Full</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyStatus Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>Cette directive permet de sp�cifier si les donn�es d'�tat du
r�partiteur de charge du mandataire doivent �tre affich�es via la
page d'�tat du serveur du module <code class="module"><a href="/mod/mod_status.html">mod_status</a></code>.</p>
<div class="note"><h3>Note</h3>
<p>L'argument <strong>Full</strong> produit le m�me effet que
l'argument <strong>On</strong>.</p>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ProxyTimeout" id="ProxyTimeout">ProxyTimeout</a> <a name="proxytimeout" id="proxytimeout">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�lai d'attente r�seau pour les requ�tes
mandat�es</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyTimeout <var>secondes</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>Valeur de la directive <code class="directive"><a href="/mod/core.html#timeout">Timeout</a></code></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>Cette directive permet � l'utilisateur de sp�cifier un d�lai pour
les requ�tes mandat�es. Ceci s'av�re utile dans le cas d'un serveur
d'applications lent et bogu� qui a tendance � se bloquer, et si vous
pr�f�rez simplement renvoyer une erreur timeout et abandonner la
connexion en douceur plut�t que d'attendre jusqu'� ce que le serveur
veuille bien r�pondre.</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="ProxyVia" id="ProxyVia">ProxyVia</a> <a name="proxyvia" id="proxyvia">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Information fournie dans l'en-t�te de r�ponse HTTP
<code>Via</code> pour les requ�tes mandat�es</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ProxyVia On|Off|Full|Block</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ProxyVia Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</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_proxy</td></tr>
</table>
<p>Cette directive permet de contr�ler l'utilisation de l'en-t�te
HTTP <code>Via:</code> par le mandataire. Le but recherch� est de
contr�ler le flux des requ�tes mandat�es tout au long d'une cha�ne
de serveurs mandataires. Voir <a href="http://www.ietf.org/rfc/rfc2616.txt">RFC 2616</a> (HTTP/1.1),
section 14.45 pour une description des lignes d'en-t�te
<code>Via:</code>.</p>
<ul>
<li>Si elle est d�finie � <code>Off</code>, valeur par d�faut, cette
directive n'effectue aucun traitement particulier. Si une requ�te ou
une r�ponse contient un en-t�te <code>Via:</code>, il est transmis
sans modification.</li>
<li>Si elle est d�finie � <code>On</code>, chaque requ�te ou r�ponse
se verra ajouter une ligne d'en-t�te <code>Via:</code> pour le
serveur courant.</li>
<li>Si elle est d�finie � <code>Full</code>, chaque ligne d'en-t�te
<code>Via:</code> se verra ajouter la version du serveur Apache
httpd sous la forme d'un champ de commentaire <code>Via:</code>.</li>
<li>Si elle est d�finie � <code>Block</code>, chaque requ�te
mandat�e verra ses lignes d'en-t�te <code>Via:</code> supprim�es.
Aucun nouvel en-t�te <code>Via:</code> ne sera g�n�r�.</li>
</ul>
</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="/en/mod/mod_proxy.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="/fr/mod/mod_proxy.html" title="Fran�ais">&nbsp;fr&nbsp;</a> |
<a href="/ja/mod/mod_proxy.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</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&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>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_proxy.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� 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/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[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>