XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX This file is generated from xml source: DO NOT EDIT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX <
title>mod_proxy - Serveur Apache HTTP</
title>
<
p class="apache">Serveur Apache HTTP Version 2.5</
p>
<
div class="up"><
a href="./"><
img title="<-" alt="<-" src="/images/left.gif" /></
a></
div>
<
div id="preamble"><
h1>Module Apache mod_proxy</
h1>
<
p><
span>Langues Disponibles: </
span><
a href="/en/mod/mod_proxy.html" hreflang="en" rel="alternate" title="English"> en </
a> |
<
a href="/ja/mod/mod_proxy.html" hreflang="ja" rel="alternate" title="Japanese"> ja </
a></
p>
<
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>
<
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>
<
p><
code class="module"><
a href="/mod/mod_proxy.html">mod_proxy</
a></
code> et ses modules associ�s impl�mentent
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
<
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
<
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>
de r�partition, si la r�partition de charge doit �tre mise en
oeuvre (Voir la documentation de
<
li>un ou plusieurs modules de types de mandataire, ou protocoles
<
tr><
th>Protocole</
th><
th>Module</
th></
tr>
<
tr><
td>AJP13 (Protocole Apache JServe version
<
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>SCGI</
td><
td><
code class="module"><
a href="/mod/mod_proxy_scgi.html">mod_proxy_scgi</
a></
code></
td></
tr>
<
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 id="quickview"><
h3 class="directives">Directives</
h3>
<
li><
img alt="" src="/images/down.gif" /> <
a href="#balancergrowth">BalancerGrowth</
a></
li>
<
li><
img alt="" src="/images/down.gif" /> <
a href="#balancermember">BalancerMember</
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"><Proxy></
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"><ProxyMatch></
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>
<
li><
img alt="" src="/images/down.gif" /> <
a href="#forwardreverse">Mandataires directs et
<
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
<
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
<
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
<
li><
code class="module"><
a href="/mod/mod_ssl.html">mod_ssl</
a></
code></
li>
<
div class="top"><
a href="#page-header"><
img alt="top" src="/images/up.gif" /></
a></
div>
<
h2><
a name="forwardreverse" id="forwardreverse">Mandataires directs et
<
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
<
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>
<
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
<
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><
p><
code>
<
div class="example"><
h3>Mandataire direct</
h3><
p><
code>
</
div><
div class="top"><
a href="#page-header"><
img alt="top" src="/images/up.gif" /></
a></
div>
<
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
connexions HTTP persistantes (Keep-Alive). En effet, les
connexions TCP vers le serveur original sont ferm�es et ouvertes
<
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"><
p><
code>
<
p>Cette directive va cr�er un worker associ� � l'URL du serveur
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"><
p><
code>
<
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>
<
div class="example"><
p><
code>
ProxySet connectiontimeout=5 timeout=30
<
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>
<
div class="example"><
p><
code>
<
p>Dans cet exemple, deux workers diff�rents sont d�finis, chacun
d'eux utilisant des configurations et jeux de connexions
<
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>
<
div class="example"><
p><
code>
<
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>
<
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>
<
h2><
a name="access" id="access">Contr�ler l'acc�s � votre
<
p>Vous pouvez restreindre l'acc�s � votre mandataire via le bloc
de contr�le <
code class="directive"><
a href="#proxy"><Proxy></
a></
code> comme dans
<
div class="example"><
p><
code>
Require ip 192.168.0<
br />
<
p>Pour plus de d�tails sur les directives de contr�le d'acc�s,
voir la documentation du module
<
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>
<
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>
<
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
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>
<
h2><
a name="envsettings" id="envsettings">Ajustements relatifs au
<
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>
<
div class="example"><
p><
code>
<Location /serveur-non-conforme/><
br />
SetEnv force-proxy-request-1.0 1<
br />
SetEnv proxy-nokeepalive 1<
br />
</
div><
div class="top"><
a href="#page-header"><
img alt="top" src="/images/up.gif" /></
a></
div>
<
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>
<
h2><
a name="x-headers" id="x-headers">En-t�tes de requ�te du mandataire
<
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>
<
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>
<
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 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#Compatibility">Compatibilit�:</
a></
th><
td>BalancerGrowth est disponible depuis la version 2.3.13 du
serveur HTTP Apache</
td></
tr>
<
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 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
<
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#Compatibility">Compatibilit�:</
a></
th><
td>Disponible depuis la version 2.2 du serveur HTTP Apache.</
td></
tr>
<
p>Cette directive parmet d'ajouter un membre � un groupe de
r�partition de charge. Elle peut se trouver dans un conteneur
<
code><Proxy <
var>balancer://</
var>...></
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><Proxy
<
var>balancer://</
var>...></
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>
<
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
<
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>
<
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><
p><
code>
<
p>Le type des arguments <
var>serveur</
var> de la directive
<
code class="directive">NoProxy</
code> appartiennent � la liste suivante
<
dt><
var><
a name="domain" id="domain">Domaine</
a></
var></
dt>
<
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
<
div class="example"><
h3>Exemple</
h3><
p><
code>
<
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
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
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>
<
dt><
var><
a name="subnet" id="subnet">Sous-r�seau</
a></
var></
dt>
<
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>
<
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>
sous-r�seau implicite de 21 bits significatifs (parfois exprim�
sous la forme<
code>255.255.248.0</
code>)</
dd>
<
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="#ipadr">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>
<
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>
<
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
<
dt><
var><
a name="hostname" id="hostname">Nom de serveur</
a></
var></
dt>
<
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
<
div class="example"><
h3>Exemples</
h3><
p><
code>
<
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
consid�r�s comme identiques.</
p>
<
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"><Proxy></
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
<
tr><
th><
a href="directive-dict.html#Syntax">Syntaxe:</
a></
th><
td><
code><Proxy <
var>url-avec-jokers</
var>> ...</Proxy></
code></
td></
tr>
<
tr><
th><
a href="directive-dict.html#Context">Contexte:</
a></
th><
td>configuration du serveur, serveur virtuel</
td></
tr>
<
p>Les directives situ�es dans une section <
code class="directive"><Proxy></
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 �
<
div class="example"><
p><
code>
<
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>
<
div class="example"><
p><
code>
SetOutputFilter INCLUDES<
br />
<
li><
code class="directive"><
a href="#proxymatch"><ProxyMatch></
a></
code></
li>
<
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#Compatibility">Compatibilit�:</
a></
th><
td>Disponible depuis la version 2.3.10</
td></
tr>
<
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�
<
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#Compatibility">Compatibilit�:</
a></
th><
td>Disponible depuis la version 2.0.44 du serveur HTTP Apache</
td></
tr>
<
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>
<
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
<
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>
<
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>Termes, serveurs ou domaines bloqu�s par le
<
tr><
th><
a href="directive-dict.html#Syntax">Syntaxe:</
a></
th><
td><
code>ProxyBlock *|<
var>terme</
var>|<
var>serveur</
var>|<
var>domaine</
var>
[<
var>terme</
var>|<
var>serveur</
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>
<
p>La directive <
code class="directive">ProxyBlock</
code> permet de
sp�cifier une liste de termes, serveurs
et/
ou domaines, s�par�s par
des espaces. Les requ�tes de documents HTTP, HTTPS, FTP vers des
sites dont les noms contiennent des termes, noms de serveur ou
domaine correspondants seront <
em>bloqu�s</
em> par le serveur
mandataire. La module proxy va aussi tenter de d�terminer les
adresses IP des �l�ments de la liste qui peuvent correspondre � des
noms d'h�tes au cours du d�marrage, et les mettra en cache � des
fins de comparaisons ult�rieures. Ceci peut ralentir le d�marrage du
<
div class="example"><
h3>Exemple</
h3><
p><
code>
<
p>Notez qu'<
code>example</
code> suffirait aussi pour atteindre
<
p>Hosts conviendrait aussi s'il �tait r�f�renc� par adresse IP.</
p>
<
div class="example"><
p><
code>
<
p>bloque les connexions vers tous les sites.</
p>
<
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
<
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>
<
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><
p><
code>
<
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
<
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#Compatibility">Compatibilit�:</
a></
th><
td>Disponible depuis la version 2.0 d'Apache</
td></
tr>
<
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
<
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
<
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>
<
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
<
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
<
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"><ProxyMatch></
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><ProxyMatch <
var>regex</
var>> ...</ProxyMatch></
code></
td></
tr>
<
tr><
th><
a href="directive-dict.html#Context">Contexte:</
a></
th><
td>configuration du serveur, serveur virtuel</
td></
tr>
<
p>La directive <
code class="directive"><ProxyMatch></
code> est
identique � la directive <
code class="directive"><
a href="#proxy"><Proxy></
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>
<
li><
code class="directive"><
a href="#proxy"><Proxy></
a></
code></
li>
<
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#Compatibility">Compatibilit�:</
a></
th><
td>Disponible depuis la version 2.0 du serveur HTTP Apache ; comportement par d�faut
<
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><
p><
code>
<
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 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>
<
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
<
div class="example"><
p><
code>
<
p>va convertir en interne toute requ�te pour
<
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>
<
div class="example"><
p><
code>
<
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>Le drapeau <
code>!</
code> permet de soustraire un sous-r�pertoire
du mandat inverse, comme dans l'exemple suivant :</
p>
<
div class="example"><
p><
code>
<
div class="example"><
p><
code>
<
p>va mandater toutes les requ�tes pour <
code>/
miroir/
foo</
code>
<
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>
<
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
<
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><
p><
code>
<
table class="bordered"><
tr><
th>Param�tres de BalancerMember</
th></
tr></
table>
<
th>Description</
th></
tr>
<
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>
<
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>
<
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>
<
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.
<
tr><
td>connectiontimeout</
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
<
tr><
td>disablereuse</
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>.
<
tr><
td>flushpackets</
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>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'.
<
tr><
td>iobuffersize</
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><
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>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>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.
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
<
tr><
td>receivebuffersize</
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>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>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
<
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>Valeur constitu�e d'une simple lettre et d�finissant l'�tat
initial de ce serveur cible.
<
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>
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
<
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>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.
<
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
d'informations � propos du fonctionnement du r�partiteur de
<
table class="bordered"><
tr><
th>Param�tres du r�partiteur</
th></
tr></
table>
<
th>Description</
th></
tr>
<
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
<
td>1 de moins que le nombre de workers, ou 1 avec un seul
<
td>Nombre maximum d'�checs avant abandon.
<
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.
<
tr><
td>stickysession</
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.
<
tr><
td>scolonpathdelim</
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>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
<
tr><
td>failonstatus</
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>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
<
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>
<
td>Nombre de membres suppl�mentaires que l'on peut ajouter � ce
r�partiteur en plus de ceux d�finis au niveau de la
<
p>Exemple de configuration d'un r�partiteur de charge</
p>
<
div class="example"><
p><
code>
ProxyPass / balancer://mon-cluster/ stickysession=JSESSIONID|jsessionid nofailover=On<
br />
<Proxy balancer://mon-cluster><
br />
BalancerMember ajp://1.2.3.4:8009<
br />
BalancerMember ajp://1.2.3.5:8009 loadfactor=20<
br />
# Serveur moins puissant ; faites-lui traiter moins de requ�tes,<
br />
BalancerMember ajp://1.2.3.6:8009 loadfactor=5<
br />
<
p>Configuration d'un serveur cible de r�serve qui ne sera utilis� que si
aucun autre serveur cible n'est disponible</
p>
<
div class="example"><
p><
code>
ProxyPass / balancer://hotcluster/ <
br />
<Proxy balancer://hotcluster><
br />
BalancerMember ajp://1.2.3.4:8009 loadfactor=1<
br />
BalancerMember ajp://1.2.3.5:8009 loadfactor=2<
br />
# La ligne suivante configure le serveur cible de r�serve<
br />
BalancerMember ajp://1.2.3.6:8009 status=+H<
br />
ProxySet lbmethod=bytraffic
<
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
<
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
<
p>Lorsque la directive ProxyPass est utilis�e � l'int�rieur d'une
section <
code class="directive"><
a href="/mod/core.html#location"><Location></
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"><Location></
a></
code>. Il en sera de m�me dans une
section <
code class="directive"><
a href="/mod/core.html#locationmatch"><LocationMatch></
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"><Directory></
a></
code> ou
<
code class="directive"><
a href="/mod/core.html#files"><Files></
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
<
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#Compatibility">Compatibilit�:</
a></
th><
td>Disponible depuis la version 2.2.9 d'Apache</
td></
tr>
<
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
<
p>Conservez cette directive � off (pour les performances du
serveur), sauf si vous en avez r�ellement besoin.</
p>
<
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> ...]]</
code></
td></
tr>
<
tr><
th><
a href="directive-dict.html#Context">Contexte:</
a></
th><
td>configuration du serveur, serveur virtuel, r�pertoire</
td></
tr>
<
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
<
div class="example"><
p><
code>
<
p>va provoquer la conversion interne de la requ�te locale
<
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>
<
div class="example"><
p><
code>
<
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
<
div class="example"><
p><
code>
<
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"><LocationMatch></
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"><LocationMatch></
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
<
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 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>
<
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
<
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 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
de Nick Kew est un module tiers qui parcourt le code HTML et r��crit
les r�f�rences d'URL.</
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
<
div class="example"><
p><
code>
<
p>ne va pas seulement provoquer la conversion interne d'une requ�te
(la fonctionnalit� fournie par <
code>ProxyPass</
code>). Il va
aussi s'occuper des redirections que le serveur
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>
<
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>Lorsque cette directive est utilis�e dans une section <
code class="directive"><
a href="/mod/core.html#location"><Location></
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"><Location></
a></
code>. Il en est de m�me � l'int�rieur
d'une section <
code class="directive"><
a href="/mod/core.html#locationmatch"><LocationMatch></
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"><Location></
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"><Directory></
a></
code> ou
<
code class="directive"><
a href="/mod/core.html#files"><Files></
a></
code>.</
p>
<
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>
<
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 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>
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>.
Dans l'exemple fourni avec la directive <
code class="directive"><
a href="#proxypassreverse">ProxyPassReverse</
a></
code>, la directive :
<
div class="example"><
p><
code>
va r��crire un cookie poss�dant un chemin d'arri�re-plan <
code>/</
code>
(ou <
code>/example</
code> ou en fait tout chemin)
<
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
<
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#Compatibility">Compatibilit�:</
a></
th><
td>Disponible depuis la version 2.0.31 du serveur HTTP Apache. Utilisable
dans un contexte de r�pertoire depuis la version 2.3.3.</
td></
tr>
<
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
<
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
<
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>
<
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><
p><
code>
ProxyReceiveBufferSize 2048
<
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
<
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>
<
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>]
<
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><
p><
code>
<
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 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>
<
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
<
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
<
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>
<
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 �
<
p>Afin d'activer la fonctionnalit� de mandataire pour des sites
<
code class="module"><
a href="/mod/mod_proxy_ftp.html">mod_proxy_ftp</
a></
code> doivent �galement �tre charg�s dans le
<
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 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
<
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#Compatibility">Compatibilit�:</
a></
th><
td>ProxySet n'est disponible que depuis la version 2.2
du serveur HTTP Apache.</
td></
tr>
<
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><Proxy <
var>url de r�partiteur|url de
serveur cible</
var>></
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"><
p><
code>
<Proxy balancer://hotcluster><
br />
ProxySet lbmethod=bytraffic<
br />
<
div class="example"><
p><
code>
ProxySet keepalive=On<
br />
<
div class="example"><
p><
code>
ProxySet balancer://foo lbmethod=bytraffic timeout=15
<
div class="example"><
p><
code>
ProxySet ajp://backend:7001 timeout=15
<
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 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
<
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#Compatibility">Compatibilit�:</
a></
th><
td>Disponible depuis la version 2.3.9</
td></
tr>
<
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 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
<
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#Compatibility">Compatibilit�:</
a></
th><
td>Disponible depuis la version 2.2 d'Apache</
td></
tr>
<
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 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
<
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#Compatibility">Compatibilit�:</
a></
th><
td>Disponible depuis la version 2.0.31 du serveur HTTP Apache</
td></
tr>
<
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 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>
<
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
section 14.45 pour une description des lignes d'en-t�te
<
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
<
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
<
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>
<
p><
span>Langues Disponibles: </
span><
a href="/en/mod/mod_proxy.html" hreflang="en" rel="alternate" title="English"> en </
a> |
<
a href="/ja/mod/mod_proxy.html" hreflang="ja" rel="alternate" title="Japanese"> ja </
a></
p>