diff options
Diffstat (limited to 'docs/manual/mod/mod_proxy.html.fr')
-rw-r--r-- | docs/manual/mod/mod_proxy.html.fr | 227 |
1 files changed, 98 insertions, 129 deletions
diff --git a/docs/manual/mod/mod_proxy.html.fr b/docs/manual/mod/mod_proxy.html.fr index 1483cb3a..09642669 100644 --- a/docs/manual/mod/mod_proxy.html.fr +++ b/docs/manual/mod/mod_proxy.html.fr @@ -9,7 +9,7 @@ <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" /> <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" /> <link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" /> -<script src="../style/scripts/prettify.js" type="text/javascript"> +<script src="../style/scripts/prettify.min.js" type="text/javascript"> </script> <link href="../images/favicon.ico" rel="shortcut icon" /></head> @@ -219,20 +219,16 @@ <p>Si en outre, vous désirez activer la mise en cache, consultez la documentation de <code class="module"><a href="../mod/mod_cache.html">mod_cache</a></code>.</p> - <div class="example"><h3>Mandataire inverse</h3><pre class="prettyprint lang-config"> -ProxyPass /foo http://foo.example.com/bar -ProxyPassReverse /foo http://foo.example.com/bar - </pre> + <div class="example"><h3>Mandataire inverse</h3><pre class="prettyprint lang-config">ProxyPass /foo http://foo.example.com/bar +ProxyPassReverse /foo http://foo.example.com/bar</pre> </div> - <div class="example"><h3>Mandataire direct</h3><pre class="prettyprint lang-config"> -ProxyRequests On + <div class="example"><h3>Mandataire direct</h3><pre class="prettyprint lang-config">ProxyRequests On ProxyVia On <Proxy *> Require host internal.example.com -</Proxy> - </pre> +</Proxy></pre> </div> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="section"> @@ -256,9 +252,7 @@ ProxyVia On Ils sont en général définis via les directives <code class="directive"><a href="#proxypass">ProxyPass</a></code> ou <code class="directive"><a href="#proxypassmatch">ProxyPassMatch</a></code> lorsqu'on les utilise dans le cadre d'un mandataire inverse :</p> - <div class="example"><pre class="prettyprint lang-config"> - ProxyPass /example http://backend.example.com connectiontimeout=5 timeout=30 - </pre> + <div class="example"><pre class="prettyprint lang-config">ProxyPass /example http://backend.example.com connectiontimeout=5 timeout=30</pre> </div> @@ -268,19 +262,15 @@ ProxyVia On d'un mandataire direct, les workers sont en général définis via la directive <code class="directive"><a href="#proxyset">ProxySet</a></code>,</p> - <div class="example"><pre class="prettyprint lang-config"> - ProxySet http://backend.example.com connectiontimeout=5 timeout=30 - </pre> + <div class="example"><pre class="prettyprint lang-config">ProxySet http://backend.example.com connectiontimeout=5 timeout=30</pre> </div> <p>ou encore via les directives <code class="directive"><a href="#proxy">Proxy</a></code> et <code class="directive"><a href="#proxyset">ProxySet</a></code> :</p> - <pre class="prettyprint lang-config"> -<Proxy http://backend.example.com> + <pre class="prettyprint lang-config"><Proxy http://backend.example.com> ProxySet connectiontimeout=5 timeout=30 -</Proxy> - </pre> +</Proxy></pre> <p>L'utilisation de workers définis explicitement dans le mode @@ -299,10 +289,8 @@ ProxyVia On <p>L'URL qui identifie un worker correspond à l'URL de son serveur original, y compris un éventuel chemin donné :</p> - <pre class="prettyprint lang-config"> -ProxyPass /examples http://backend.example.com/examples -ProxyPass /docs http://backend.example.com/docs - </pre> + <pre class="prettyprint lang-config">ProxyPass /examples http://backend.example.com/examples +ProxyPass /docs http://backend.example.com/docs</pre> <p>Dans cet exemple, deux workers différents sont définis, chacun @@ -315,10 +303,8 @@ ProxyPass /docs http://backend.example.com/docs correspond au début de l'URL d'un autre worker défini plus loin dans le fichier de configuration. Dans l'exemple suivant,</p> - <pre class="prettyprint lang-config"> -ProxyPass /apps http://backend.example.com/ timeout=60 -ProxyPass /examples http://backend.example.com/examples timeout=10 - </pre> + <pre class="prettyprint lang-config">ProxyPass /apps http://backend.example.com/ timeout=60 +ProxyPass /examples http://backend.example.com/examples timeout=10</pre> <p>le second worker n'est pas vraiment créé. C'est le premier @@ -372,11 +358,9 @@ ProxyPass /examples http://backend.example.com/examples timeout=10 de contrôle <code class="directive"><a href="#proxy"><Proxy></a></code> comme dans l'exemple suivant :</p> - <pre class="prettyprint lang-config"> -<Proxy *> + <pre class="prettyprint lang-config"><Proxy *> Require ip 192.168.0 -</Proxy> - </pre> +</Proxy></pre> <p>Pour plus de détails sur les directives de contrôle d'accès, @@ -447,13 +431,11 @@ ProxyPass /examples http://backend.example.com/examples timeout=10 <p>Il s'agit des variables <code>force-proxy-request-1.0</code> et <code>proxy-nokeepalive</code>.</p> - <pre class="prettyprint lang-config"> -<Location /buggyappserver/> + <pre class="prettyprint lang-config"><Location /buggyappserver/> ProxyPass http://buggyappserver:7001/foo/ SetEnv force-proxy-request-1.0 1 SetEnv proxy-nokeepalive 1 -</Location> - </pre> +</Location></pre> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> @@ -641,10 +623,8 @@ directement</td></tr> sans être redirigée vers le(s) serveur(s) mandataire(s) défini(s) par la directive <code class="directive"><a href="#proxyremote">ProxyRemote</a></code>.</p> - <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"> -ProxyRemote * http://firewall.example.com:81 -NoProxy .example.com 192.168.112.0/21 - </pre> + <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">ProxyRemote * http://firewall.example.com:81 +NoProxy .example.com 192.168.112.0/21</pre> </div> <p>Le type des arguments <var>serveur</var> de la directive @@ -784,11 +764,9 @@ mandatées</td></tr> contenu via votre serveur mandataire que les hôtes appartenant à <code>votre-reseau.example.com</code> :</p> - <pre class="prettyprint lang-config"> -<Proxy *> + <pre class="prettyprint lang-config"><Proxy *> Require host votre-reseau.example.com -</Proxy> - </pre> +</Proxy></pre> <p>Dans l'exemple suivant, tous les fichiers du répertoire @@ -796,12 +774,25 @@ mandatées</td></tr> filtre <code>INCLUDES</code> lorsqu'ils seront envoyés par l'intermédiaire du serveur mandataire :</p> - <pre class="prettyprint lang-config"> -<Proxy http://example.com/foo/*> + <pre class="prettyprint lang-config"><Proxy http://example.com/foo/*> SetOutputFilter INCLUDES -</Proxy> - </pre> - +</Proxy></pre> + + + <div class="note"><h3>Différences avec la section de configuration Location</h3> + <p>Une URL d'arrière-plan sera concernée par le conteneur Proxy si + elle commence par la <var>url-avec-jokers</var>, même si le + dernier segment de chemin de la directive ne correspond qu'à un + préfixe de segment dee chemin de l'URL d'arrière-plan. Par exemple, <Proxy + http://example.com/foo> correspondra entre autres aux URLs + http://example.com/foo, http://example.com/foo/bar, et + http://example.com/foobar. La correspondance de l'URL finale + diffère du comportement de la section <code class="directive"><a href="../mod/core.html#location"><Location></a></code> qui, pour le cas de cette note, + traitera le segment de chemin final comme s'il se terminait par un + slash.</p> + <p>Pour un contrôle plus fin de la correspondance des URL, voir la + directive <code class="directive"><ProxyMatch></code>.</p> + </div> <h3>Voir aussi</h3> @@ -887,9 +878,7 @@ mandataire</td></tr> fins de comparaisons ultérieures. Ceci peut ralentir le démarrage du serveur.</p> - <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"> - ProxyBlock news.example.com auctions.example.com friends.example.com - </pre> + <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">ProxyBlock news.example.com auctions.example.com friends.example.com</pre> </div> <p>Notez qu'<code>example</code> suffirait aussi pour atteindre @@ -899,9 +888,7 @@ mandataire</td></tr> <p>Notez aussi que</p> - <pre class="prettyprint lang-config"> - ProxyBlock * - </pre> + <pre class="prettyprint lang-config">ProxyBlock *</pre> <p>bloque les connexions vers tous les sites.</p> @@ -925,11 +912,9 @@ mandatées</td></tr> générer une réponse de redirection vers le même hôte suffixé par le <var>Domaine</var> spécifié.</p> - <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"> - ProxyRemote * http://firewall.example.com:81<br /> + <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"> ProxyRemote * http://firewall.example.com:81<br /> NoProxy .example.com 192.168.112.0/21<br /> - ProxyDomain .example.com - </pre> + ProxyDomain .example.com</pre> </div> </div> @@ -1006,6 +991,20 @@ mandatées correspondant à une expression rationnelle</td></tr> 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> + <p>A partir de la version 2.5.0, les groupes nommés et les + références arrières sont extraits et enregistrés dans + l'environnement avec leur nom en majuscules et préfixé par "MATCH_". Ceci permet + de référencer des URLs dans des <a href="../expr.html">expressions</a> + ou au sein de modules comme <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>. Pour + éviter toute confusion, les références arrières numérotées (non + nommées) sont ignorées. Vous devez utiliser à la place des groupes + nommés.</p> + +<pre class="prettyprint lang-config"><ProxyMatch ^http://(?<sitename>[^/]+)> + require ldap-group cn=%{env:MATCH_SITENAME},ou=combined,o=Example +</ProxyMatch></pre> + + <h3>Voir aussi</h3> <ul> <li><code class="directive"><a href="#proxy"><Proxy></a></code></li> @@ -1031,9 +1030,7 @@ modifié dans 2.2.7</td></tr> contre les boucles infinies de mandataires ou contre les attaques de type déni de service.</p> - <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"> - ProxyMaxForwards 15 - </pre> + <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">ProxyMaxForwards 15</pre> </div> <p>Notez que la définition de la directive @@ -1074,14 +1071,22 @@ l'espace d'URLs du serveur local</td></tr> <strong>off</strong> lorsqu'on utilise la directive <code class="directive">ProxyPass</code>.</div> + <p>Le support des sockets de style Unix est fourni ; il suffit pour + cela d'utiliser une URL cible préfixée par + <code>unix:/path/lis.sock|</code>. Par exemple, pour mandater HTTP + et cibler l'UDS /home/www/socket, vous devez utiliser + <code>unix:/home/www.socket|http://localhost/whatever/</code>.</p> + + <div class="note"><strong>Note :</strong>Le chemin associé à l'URL + <code>unix:</code> tient compte de la directive + <code class="directive">DefaultRuntimeDir</code>.</div> + <p>Supposons que le serveur local a pour adresse <code>http://example.com/</code> ; alors la ligne</p> - <pre class="prettyprint lang-config"> -<Location /mirror/foo/> + <pre class="prettyprint lang-config"><Location /mirror/foo/> ProxyPass http://backend.example.com/ -</Location> - </pre> +</Location></pre> <p>va convertir en interne toute requête pour @@ -1093,9 +1098,7 @@ l'espace d'URLs du serveur local</td></tr> présente en très grand nombre. Elle possède l'avantage de permettre un contrôle dynamique via l'interface <a href="mod_proxy_balancer.html#balancer_manager">Balancer Manager</a> :</p> - <pre class="prettyprint lang-config"> - ProxyPass /miroir/foo/ http://backend.example.com/ - </pre> + <pre class="prettyprint lang-config">ProxyPass /miroir/foo/ http://backend.example.com/</pre> <div class="warning"> @@ -1110,20 +1113,16 @@ l'espace d'URLs du serveur local</td></tr> <p>Le drapeau <code>!</code> permet de soustraire un sous-répertoire du mandat inverse, comme dans l'exemple suivant :</p> - <pre class="prettyprint lang-config"> -<Location /mirror/foo/> + <pre class="prettyprint lang-config"><Location /mirror/foo/> ProxyPass http://backend.example.com/ </Location> <Location /mirror/foo/i> ProxyPass ! -</Location> - </pre> +</Location></pre> - <pre class="prettyprint lang-config"> -ProxyPass /mirror/foo/i ! -ProxyPass /mirror/foo http://backend.example.com - </pre> + <pre class="prettyprint lang-config">ProxyPass /mirror/foo/i ! +ProxyPass /mirror/foo http://backend.example.com</pre> <p>va mandater toutes les requêtes pour <code>/miroir/foo</code> @@ -1176,9 +1175,7 @@ ProxyPass /mirror/foo http://backend.example.com enfants, sauf si un seul processus enfant est autorisé par la configuration ou la conception du module multi-processus (MPM).</p> - <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"> - ProxyPass /example http://backend.example.com max=20 ttl=120 retry=300 - </pre> + <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">ProxyPass /example http://backend.example.com max=20 ttl=120 retry=300</pre> </div> <table class="bordered"><tr><th>Paramètres de BalancerMember</th></tr></table> @@ -1508,30 +1505,26 @@ ProxyPass /mirror/foo http://backend.example.com </table> <p>Exemple de configuration d'un répartiteur de charge</p> - <pre class="prettyprint lang-config"> -ProxyPass /special-area http://special.example.com smax=5 max=10 + <pre class="prettyprint lang-config">ProxyPass /special-area http://special.example.com smax=5 max=10 ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On <Proxy balancer://mycluster> BalancerMember ajp://1.2.3.4:8009 BalancerMember ajp://1.2.3.5:8009 loadfactor=20 # Less powerful server, don't send as many requests there, BalancerMember ajp://1.2.3.6:8009 loadfactor=5 -</Proxy> - </pre> +</Proxy></pre> <p>Configuration d'un serveur cible de réserve qui ne sera utilisé que si aucun autre serveur cible n'est disponible</p> - <pre class="prettyprint lang-config"> -ProxyPass / balancer://hotcluster/ + <pre class="prettyprint lang-config">ProxyPass / balancer://hotcluster/ <Proxy balancer://hotcluster> BalancerMember ajp://1.2.3.4:8009 loadfactor=1 BalancerMember ajp://1.2.3.5:8009 loadfactor=2 # The server below is on hot standby BalancerMember ajp://1.2.3.6:8009 status=+H ProxySet lbmethod=bytraffic -</Proxy> - </pre> +</Proxy></pre> <p>Normalement, mod_proxy va mettre sous leur forme canonique les @@ -1579,8 +1572,7 @@ ProxyPass / balancer://hotcluster/ protocole peut être effectuée à l'aide de <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> comme dans l'exemple suivant :</p> - <pre class="prettyprint lang-config"> -RewriteEngine On + <pre class="prettyprint lang-config">RewriteEngine On RewriteCond %{HTTPS} =off RewriteRule . - [E=protocol:http] @@ -1589,8 +1581,7 @@ RewriteRule . - [E=protocol:https] RewriteRule ^/mirror/foo/(.*) %{ENV:protocol}://backend.example.com/$1 [P] ProxyPassReverse /mirror/foo/ http://backend.example.com/ -ProxyPassReverse /mirror/foo/ https://backend.example.com/ - </pre> +ProxyPassReverse /mirror/foo/ https://backend.example.com/</pre> @@ -1677,9 +1668,7 @@ du serveur local en utilisant des expressions rationnelles</td></tr> <p>Supposons que le serveur local a pour adresse <code>http://example.com/</code> ; alors</p> - <pre class="prettyprint lang-config"> - ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com$1 - </pre> + <pre class="prettyprint lang-config">ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com$1</pre> <p>va provoquer la conversion interne de la requête locale @@ -1691,17 +1680,13 @@ du serveur local en utilisant des expressions rationnelles</td></tr> <em>avant</em> les substitutions d'expressions rationnelles (et doit aussi l'être après). Ceci limite les correspondances que vous pouvez utiliser. Par exemple, si l'on avait utilisé</p> - <pre class="prettyprint lang-config"> - ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com:8000$1 - </pre> + <pre class="prettyprint lang-config">ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com:8000$1</pre> <p>dans l'exemple précédent, nous aurions provoqué une erreur de syntaxe au démarrage du serveur. C'est une bogue (PR 46665 dans ASF bugzilla), et il est possible de la contourner en reformulant la correspondance :</p> - <pre class="prettyprint lang-config"> - ProxyPassMatch ^/(.*\.gif)$ http://backend.example.com:8000/$1 - </pre> + <pre class="prettyprint lang-config">ProxyPassMatch ^/(.*\.gif)$ http://backend.example.com:8000/$1</pre> </div> @@ -1764,12 +1749,10 @@ par un serveur mandaté en inverse</td></tr> <p>Supposons par exemple que le serveur local a pour adresse <code>http://example.com/</code> ; alors</p> - <pre class="prettyprint lang-config"> -ProxyPass /mirror/foo/ http://backend.example.com/ + <pre class="prettyprint lang-config">ProxyPass /mirror/foo/ http://backend.example.com/ ProxyPassReverse /mirror/foo/ http://backend.example.com/ ProxyPassReverseCookieDomain backend.example.com public.example.com -ProxyPassReverseCookiePath / /mirror/foo/ - </pre> +ProxyPassReverseCookiePath / /mirror/foo/</pre> <p>ne va pas seulement provoquer la conversion interne d'une requête @@ -1855,9 +1838,7 @@ réécrire la chaîne <code>path</code> dans les en-têtes </p><p> Dans l'exemple fourni avec la directive <code class="directive"><a href="#proxypassreverse">ProxyPassReverse</a></code>, la directive : </p> - <pre class="prettyprint lang-config"> - ProxyPassReverseCookiePath / /mirror/foo/ - </pre> + <pre class="prettyprint lang-config">ProxyPassReverseCookiePath / /mirror/foo/</pre> <p> va réécrire un cookie possédant un chemin d'arrière-plan <code>/</code> @@ -1908,9 +1889,7 @@ et FTP</td></tr> <code>0</code> pour indiquer que la taille de tampon par défaut du système doit être utilisée.</p> - <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"> - ProxyReceiveBufferSize 2048 - </pre> + <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">ProxyReceiveBufferSize 2048</pre> </div> </div> @@ -1943,11 +1922,9 @@ requêtes</td></tr> <code>https</code>, les requêtes sont redirigées par le mandataire distant en utilisant la méthode HTTP CONNECT.</p> - <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"> -ProxyRemote http://goodguys.example.com/ http://mirrorguys.example.com:8000 + <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">ProxyRemote http://goodguys.example.com/ http://mirrorguys.example.com:8000 ProxyRemote * http://cleverproxy.localdomain -ProxyRemote ftp http://ftpproxy.mydomain:8080 - </pre> +ProxyRemote ftp http://ftpproxy.mydomain:8080</pre> </div> <p>Dans la dernière ligne de l'exemple, le mandataire va faire @@ -2041,30 +2018,22 @@ du serveur HTTP Apache.</td></tr> est créé. Ceci peut s'avérer utile pour la mise en oeuvre d'un mandataire inverse via une directive <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> au lieu de <code class="directive"><a href="#proxypass">ProxyPass</a></code>.</p> - <div class="example"><pre class="prettyprint lang-config"> -<Proxy balancer://hotcluster> + <div class="example"><pre class="prettyprint lang-config"><Proxy balancer://hotcluster> BalancerMember http://www2.example.com:8080 loadfactor=1 BalancerMember http://www3.example.com:8080 loadfactor=2 ProxySet lbmethod=bytraffic -</Proxy> - </pre> +</Proxy></pre> </div> - <pre class="prettyprint lang-config"> -<Proxy http://backend> + <pre class="prettyprint lang-config"><Proxy http://backend> ProxySet keepalive=On -</Proxy> - </pre> +</Proxy></pre> - <pre class="prettyprint lang-config"> - ProxySet balancer://foo lbmethod=bytraffic timeout=15 - </pre> + <pre class="prettyprint lang-config">ProxySet balancer://foo lbmethod=bytraffic timeout=15</pre> - <pre class="prettyprint lang-config"> - ProxySet ajp://backend:7001 timeout=15 - </pre> + <pre class="prettyprint lang-config">ProxySet ajp://backend:7001 timeout=15</pre> <div class="warning"><h3>Avertissement</h3> @@ -2195,7 +2164,7 @@ var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_proxy.html'; } })(window, document); //--><!]]></script></div><div id="footer"> -<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> +<p class="apache">Copyright 2014 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!-- if (typeof(prettyPrint) !== 'undefined') { prettyPrint(); |