]> granicus.if.org Git - apache/commitdiff
Updates.
authorLucien Gentis <lgentis@apache.org>
Sat, 23 Oct 2010 16:02:06 +0000 (16:02 +0000)
committerLucien Gentis <lgentis@apache.org>
Sat, 23 Oct 2010 16:02:06 +0000 (16:02 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1026632 13f79535-47bb-0310-9956-ffa450edef68

docs/manual/mod/core.xml.fr
docs/manual/mod/mod_proxy.xml.fr
docs/manual/rewrite/flags.xml.fr

index f754d7e5a8f0817030cad6c6481448cf23b93363..020f01477625d25747a51eb696649b29a1b7d571 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0"?>
 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
 <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1021924 -->
+<!-- English Revision : 1023846 -->
 <!-- French translation : Lucien GENTIS -->
 <!-- Reviewed by : Vincent Deffontaines -->
 
@@ -871,10 +871,10 @@ host</context>
     <p>Pour les configurations de serveur sujettes &agrave; ce genre de
     probl&egrave;me, il est pr&eacute;f&eacute;rable de d&eacute;sactiver la projection en m&eacute;moire
     des fichiers servis en sp&eacute;cifiant :</p>
-    <p>S'il fait l'objet d'une projection en m&eacute;moire par
+    <li>S'il fait l'objet d'une projection en m&eacute;moire par
     <program>httpd</program>, la suppression ou la troncature d'un
     fichier peut provoquer un crash de <program>httpd</program> avec une
-    erreur de segmentation.</p>
+    erreur de segmentation.</li>
     <example>
       EnableMMAP Off
     </example>
@@ -1987,7 +1987,7 @@ host</context>
 
     <p>Lorsqu'un client utilise une connexion persistante, elle comptera
     pour une seule requ&ecirc;te pour la directive <directive
-    module="mpm_common">MaxConnectionsPerChild</directive>, quel
+    module="mpm_common">MaxConnectionsPerChild<</directive>, quel
     que soit le nombre de requ&ecirc;tes transmises via cette connexion.</p>
 </usage>
 
@@ -3612,7 +3612,16 @@ host</context>
     <p>La directive <directive>ServerName</directive> permet de d&eacute;finir
     les protocole, nom d'h&ocirc;te et port d'une requ&ecirc;te que le serveur
     utilise pour s'authentifier lui-m&ecirc;me. Ceci est utile lors de la
-    cr&eacute;ation de redirections d'URLs. Par exemple, si le nom de la
+    cr&eacute;ation de redirections d'URLs.</p>
+
+    <p>La directive <directive>ServerName</directive> permet aussi
+    (&eacute;ventuellement en conjonction avec la directive
+    <directive>ServerAlias</directive>) d'identifier de mani&egrave;re unique
+    un serveur virtuel, lorsqu'elle est utilis&eacute;e dans un contexte de <a
+    href="../vhosts/name-based.html">serveurs virtuels &agrave; base de
+    noms</a>.</p>
+    
+    <p>Par exemple, si le nom de la
     machine h&eacute;bergeant le serveur web est
     <code>simple.example.com</code>, la machine poss&egrave;de l'alias
     DNS <code>www.example.com</code>, et si vous voulez que le serveur
index a60a486c5b6ec5e3fb9497e2e727a009fa0f8ae5..40f21a3bad3e43755d357a52207d71945c8bc981 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0"?>
 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
 <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1021468 -->
+<!-- English Revision : 1026184 -->
 <!-- French translation : Lucien GENTIS -->
 <!-- Reviewed by : Vincent Deffontaines -->
 
@@ -793,13 +793,25 @@ l'espace d'URLs du serveur local</description>
     <code>http://example.com/</code> ; alors la ligne</p>
 
     <example>
-      ProxyPass /miroir/foo/ http://backend.example.com/
+      &lt;Location /miroir/foo/&gt;<br />
+        <indent>
+          ProxyPass http://backend.example.com/<br />
+        </indent>
+        &lt;/Location&gt;<br />
     </example>
 
     <p>va convertir en interne toute requ&ecirc;te pour
     <code>http://example.com/miroir/foo/bar</code> en une requ&ecirc;te
     mandat&eacute;e pour <code>http://backend.example.com/bar</code>.</p>
 
+    <p>La syntaxe alternative suivante est valide, bien qu'elle induise
+    une d&eacute;gradation des performances lorsqu'elle est pr&eacute;sente en grand
+    nombre :</p>
+
+    <example>
+        ProxyPass /miroir/foo/ http://backend.example.com/
+    </example>
+
     <note type="warning">
     <p>Si le premier argument se termine par un slash
     <strong>/</strong>, il doit en &ecirc;tre de m&ecirc;me pour le second argument
@@ -812,6 +824,19 @@ l'espace d'URLs du serveur local</description>
     <p>Le drapeau <code>!</code> permet de soustraire un sous-r&eacute;pertoire
     du mandat inverse, comme dans l'exemple suivant :</p>
 
+    <example>
+      &lt;Location /miroir/foo/&gt;<br />
+        <indent>
+          ProxyPass http://backend.example.com/<br />
+        </indent>
+        &lt;/Location&gt;<br />
+        &lt;Location /miroir/foo/i&gt;<br />
+        <indent>
+            ProxyPass !<br />
+        </indent>
+        &lt;/Location&gt;<br />
+    </example>
+
     <example>
       ProxyPass /miroir/foo/i !<br />
       ProxyPass /miroir/foo http://backend.example.com
@@ -832,7 +857,11 @@ l'espace d'URLs du serveur local</description>
       l'URL la plus longue &agrave; la plus courte. Dans le cas contraire, les
       r&egrave;gles situ&eacute;es apr&egrave;s une r&egrave;gle dont l'URL correspond au d&eacute;but de
       leur propre URL seront ignor&eacute;es. Notez que tout ceci est en
-      relation avec le partage de workers.</p>
+      relation avec le partage de workers. Par contre, on ne peut placer
+      qu'une seule directive <directive
+      module="mod_proxy">ProxyPass</directive> dans une section
+      <directive module="core">Location</directive>, et c'est la section
+      la plus sp&eacute;cifique qui l'emportera.</p>
 
       <p>Pour les m&ecirc;mes raisons, les exclusions doivent se situer
       <em>avant</em> les directives <directive>ProxyPass</directive>
@@ -1750,6 +1779,7 @@ mandat&eacute;s</description>
 <syntax>ProxyErrorOverride On|Off</syntax>
 <default>ProxyErrorOverride Off</default>
 <contextlist><context>server config</context><context>virtual host</context>
+<context>directory</context>
 </contextlist>
 <compatibility>Disponible depuis la version 2.0 d'Apache</compatibility>
 
index 20dc36e19c5e163ed882bcd57cd1fb52f71042e6..2416b0b7ce94bd4d863cf0ff6b03b61b8823e83f 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="ISO-8859-1" ?>
 <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
 <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 832080 -->
+<!-- English Revision : 1025748 -->
 <!-- French translation : Lucien GENTIS -->
 <!-- Reviewed by : Vincent Deffontaines -->
 
 -->
 
 
+<parentdocument href="./">Rewrite</parentdocument>
 <manualpage metafile="flags.xml.meta">
-  <parentdocument href="./">Rewrite</parentdocument>
-  <title>Les drapeaux du module Apache mod_rewrite</title>
+  <title>Les drapeaux de r&eacute;&eacute;criture</title>
 
 <summary>
 <p>Ce document d&eacute;crit les drapeaux disponibles dans la directive
 <directive module="mod_rewrite">RewriteRule</directive>, en fournissant
-des explications d&eacute;taill&eacute;es et des exemples. Vous n'y trouverez pas
-une liste exhaustive de tous les drapeaux disponibles, c'est pourquoi
-vous devez aussi consulter la documentation de r&eacute;f&eacute;rence.</p>
+des explications d&eacute;taill&eacute;es et des exemples.</p>
 </summary>
 
 <seealso><a href="../mod/mod_rewrite.html">Documentation du module</a></seealso>
-<seealso><a href="tech.html">D&eacute;tails techniques</a></seealso>
-<seealso><a href="rewrite_guide.html">Guide de r&eacute;&eacute;criture - exemples
-utiles</a></seealso>
-<seealso><a href="rewrite_guide_advanced.html">Guide de r&eacute;&eacute;criture
-avanc&eacute;e - exemples utiles avanc&eacute;s</a></seealso>
+<seealso><a href="intro.html">Introduction &agrave; mod_rewrite</a></seealso>
+<seealso><a href="remapping.html">Redirection and remise en
+correspondance</a></seealso>
+<seealso><a href="access.html">Contr&ocirc;le d'acc&egrave;s</a></seealso>
+<seealso><a href="vhosts.html">Serveurs virtuels</a></seealso>
+<seealso><a href="proxy.html">Mise en cache</a></seealso>
+<seealso><a href="rewritemap.html">Utilisation de RewriteMap</a></seealso>
+<seealso><a href="advanced.html">Techniques avanc&eacute;es et astuces</a></seealso>
+<seealso><a href="avoid.html">Quand ne pas utiliser mod_rewrite</a></seealso>
 
 <section id="introduction"><title>Introduction</title>
-<p>Le comportement des directives <directive
+<p>Le comportement d'une directive <directive
 module="mod_rewrite">RewriteRule</directive> peut &ecirc;tre modifi&eacute; par un ou
 plusieurs drapeaux. Les drapeaux sont situ&eacute;s en fin de r&egrave;gle, entour&eacute;s
 de crochets, et s&eacute;par&eacute;s le cas &eacute;ch&eacute;ant par des virgules.</p>
@@ -56,22 +58,49 @@ qu'une forme longue, comme <code>cookie</code>. Certains drapeaux
 peuvent avoir un ou plusieurs arguments. Les drapeaux sont insensibles &agrave;
 la casse.</p>
 
-</section>
-
-<section id="flags"><title>Les drapeaux</title>
-
-<p>Chaque drapeau poss&egrave;de une forme longue et une forme courte. Bien que
+<p>Chaque drapeau (&agrave; quelques exceptions pr&egrave;s) poss&egrave;de une forme longue et une forme courte. Bien que
 la forme courte soit la plus couramment utilis&eacute;e, nous vous recommandons
 de vous familiariser avec les drapeaux sous leur forme longue, afin de
 bien m&eacute;moriser ce que chaque drapeau est suppos&eacute; faire.</p>
 
+<p>Les drapeaux qui modifient les m&eacute;tadonn&eacute;es associ&eacute;es &agrave; la requ&ecirc;te
+(T=, H=, E=) n'ont aucun effet dans un contexte de r&eacute;pertoire ou de
+fichier htaccess, lorsqu'une substitution (autre que '-') est effectu&eacute;e
+au cours de la m&ecirc;me passe du processus de r&eacute;&eacute;criture.
+</p>
+
 <p>Chaque drapeau disponible est pr&eacute;sent&eacute; ici, avec un exemple
 d'utilisation.</p>
+</section>
 
-<section id="flag_b"><title>B</title>
+<section id="flag_b"><title>B (&eacute;chappement dans les r&eacute;f&eacute;rences arri&egrave;res)</title>
 <p>Avec le drapeau [B], la directive <directive
 module="mod_rewrite">RewriteRule</directive> &eacute;chappe les caract&egrave;res
 non-alphanum&eacute;riques avant d'appliquer la transformation.</p>
+
+<p><code>mod_rewrite</code> doit supprimer les s&eacute;quences d'&eacute;chappement
+des URLs avant leur
+mise en correspondance avec le syst&egrave;me de fichiers ; les s&eacute;quences
+d'&eacute;chappement sont donc supprim&eacute;es des r&eacute;f&eacute;rences arri&egrave;res au moment o&ugrave;
+ces derni&egrave;res sont appliqu&eacute;es. Avec le drapeau B, les caract&egrave;res
+non-alphanum&eacute;riques des r&eacute;f&eacute;rences arri&egrave;res seront &eacute;chapp&eacute;s. Consid&eacute;rons
+par exemple cette r&egrave;gle :</p>
+
+<example>
+RewriteRule ^(/.*)$ /index.php?show=$1
+</example>
+
+<p>Avec cet exemple, <code>/C++</code> sera r&eacute;&eacute;crit en
+<code>/index.php?show=/C++</code>. Mais <code>/C%2b%2b</code> sera lui
+aussi r&eacute;&eacute;crit en <code>/index.php?show=/C++</code>, car le caract&egrave;re
+<code>%2b</code> aura &eacute;t&eacute; "d&eacute;s&eacute;chapp&eacute;". Avec le drapeau B par contre,
+<code>/C%2b%2b</code> sera r&eacute;&eacute;crit en
+<code>/index.php?show=/C%2b%2b</code>.</p>
+
+<p>Ce processus d'&eacute;chappement est en particulier n&eacute;cessaire dans le
+contexte d'un mandataire, o&ugrave; l'acc&egrave;s au serveur d'arri&egrave;re-plan &eacute;chouera
+si on pr&eacute;sente &agrave; ce dernier une URL non &eacute;chapp&eacute;e.</p>
+
 </section>
 
 <section id="flag_c"><title>C|chain</title>
@@ -87,16 +116,56 @@ cha&icirc;n&eacute;es qui suivent, seront saut&eacute;es.</p>
 <section id="flag_co"><title>CO|cookie</title>
 <p>Le drapeau [CO], ou [cookie], vous permet de d&eacute;finir un cookie
 lorsqu'une r&egrave;gle <directive module="mod_rewrite">RewriteRule</directive>
-s'applique. Il poss&egrave;de cinq arguments dont trois sont obligatoires et
-deux optionnels.</p>
-<p>Vous devez d&eacute;clarer un nom et une valeur pour d&eacute;finir le cookie,
-ainsi que le domaine pour lequel vous souhaitez que le cookie soit
-valide. Vous pouvez aussi d&eacute;finir la dur&eacute;e de vie du cookie, ainsi que
-le chemin pour lequel il doit &ecirc;tre renvoy&eacute;.</p>
-<p>Par d&eacute;faut, la dur&eacute;e de vie du cookie correspond &agrave; la session du
-navigateur en cours.</p>
-<p>Par d&eacute;faut, le chemin pour lequel le cookie sera valide est "/" -
-c'est &agrave; dire, pour tout le site web.</p>
+s'applique. Il poss&egrave;de trois arguments obligatoires et
+cinq arguments optionnels.</p>
+
+<p>La syntaxe compl&egrave;te de ce drapeau, avec tous ses attributs, est la
+suivante :</p>
+
+<example>
+[CO=NAME:VALUE:domain:lifetime:path:secure:httponly]
+</example>
+
+<p>Vous devez d&eacute;clarer un nom et une valeur pour que le cookie puisse
+&ecirc;tre d&eacute;fini.</p>
+
+<p>Vous pouvez aussi d&eacute;finir les valeurs suivantes :</p>
+
+<dl>
+<dt>Domain</dt>
+<dd>Le domaine pour lequel vous souhaitez que le cookie soit valide. Ce
+peut &ecirc;tre un nom de serveur, comme <code>www.example.com</code>, ou un
+domaine, comme <code>.example.com</code>. Il doit comporter au moins
+deux parties s&eacute;par&eacute;es par un point. C'est &agrave; dire que vous ne pouvez pas
+utiliser les valeurs <code>.com</code> ou <code>.net</code>. En effet,
+ce style de cookie est interdit par le mod&egrave;le de s&eacute;curit&eacute; des cookies.</dd>
+<dd>La valeur par d&eacute;faut est le domaine courant.</dd>
+
+<dt>Lifetime</dt>
+<dd>La dur&eacute;e de vie du cookie, en minutes.</dd>
+<dd>Une valeur de 0 indique une dur&eacute;e de vie correspondant &agrave; la session
+courante du navigateur. Il s'agit de la valeur par d&eacute;faut.</dd>
+
+<dt>Path</dt>
+<dd>Le chemin, sur le site web concern&eacute;, pour lequel le cookie est
+valide, du style <code>/clients/</code> or
+<code>/fichiers/telechargement/</code>.</dd>
+<dd>La valeur par d&eacute;faut est <code>/</code> - c'est &agrave; dire l'ensemble du
+site web.</dd>
+
+<dt>Secure</dt>
+<dd>Si cet argument a pour valeur <code>secure</code>,
+<code>true</code>, ou <code>1</code>, le cookie ne pourra &ecirc;tre transmis
+que dans le cadre d'une connexion s&eacute;curis&eacute;e (https).</dd>
+
+<dt>httponly</dt>
+<dd>Si cet argument a pour valeur <code>HttpOnly</code>,
+<code>true</code>, ou <code>1</code>, le cookie aura son drapeau
+<code>HttpOnly</code> activ&eacute;, ce qui signifie qu'il sera inaccessible au
+code JavaScript pour les navigateurs qui supportent cette
+fonctionnalit&eacute;.</dd>
+</dl>
+
 <p>Voici un exemple :</p>
 
 <example>
@@ -118,10 +187,34 @@ pour tous les URIs.</p>
 <section id="flag_dpi"><title>DPI|discardpathinfo</title>
 <p>Avec le drapeau DPI, la partie PATH_INFO de l'URI
 r&eacute;&eacute;crit est supprim&eacute;e.</p>
+<p>Ce drapeau est disponible dans les versions 2.2.12 et sup&eacute;rieures.</p>
+<p>Dans un contexte de r&eacute;pertoire, l'URI mis en comparaison par chaque
+r&egrave;gle <directive>RewriteRule</directive> est la concat&eacute;nation des
+valeurs courantes de l'URI et de PATH_INFO.</p>
+
+<p>L'URI courant peut &ecirc;tre l'URI initial tel qu'il a &eacute;t&eacute; fourni par le
+client, le r&eacute;sultat d'une passe pr&eacute;c&eacute;dente du processus de r&eacute;&eacute;criture,
+ou le r&eacute;sultat de la r&egrave;gle pr&eacute;c&eacute;dente dans le processus courant de
+r&eacute;&eacute;criture.</p>
+
+<p>Par contre, la partie PATH_INFO ajout&eacute;e &agrave; l'URI avant chaque r&egrave;gle ne
+refl&egrave;te que la valeur de PATH_INFO avant la passe courante du processus
+de r&eacute;&eacute;criture. En cons&eacute;quence, si de larges portions de l'URI
+correspondent et sont traduites via plusieurs directives
+<directive>RewriteRule</directive>, sans prendre en compte
+quelles parties de l'URI provenaient du PATH_INFO courant, l'URI final
+pourra se voir ajouter plusieurs copies de PATH_INFO.</p>
+
+<p>Utilisez ce drapeau pour toute substitution o&ugrave; la pr&eacute;sence du PATH_INFO qui
+r&eacute;sultait de la mise en correspondance pr&eacute;c&eacute;dente de cette requ&ecirc;te avec
+le syst&egrave;me de fichier n'est pas n&eacute;cessaire. Avec ce drapeau, le
+PATH_INFO &eacute;tabli avant que cette passe du processus de r&eacute;&eacute;criture ne
+d&eacute;bute est oubli&eacute;. PATH_INFO ne sera pas recalcul&eacute; tant que la passe
+courante du processus de r&eacute;&eacute;criture ne sera pas achev&eacute;e. Les r&egrave;gles
+suivantes de cette passe ne verront que le r&eacute;sultat direct des
+substitutions, sans aucun PATH_INFO ajout&eacute;.</p>
 </section>
 
-
-
 <section id="flag_e"><title>E|env</title>
 <p>Avec le drapeau [E], ou [env], vous pouvez d&eacute;finir la valeur d'une
 variable d'environnement. Notez que certaines variables d'environnement
@@ -130,6 +223,28 @@ la-m&ecirc;me ce que vous avez d&eacute;fini. Voir le <a href="../env.html">docu
 sur les variables d'environnement</a> pour plus de d&eacute;tails sur le
 fonctionnement des variables d'environnement.</p>
 
+<p>La syntaxe compl&egrave;te pour ce drapeau est :</p>
+
+<example>
+[E=VAR:VAL]
+</example>
+
+<p><code>VAL</code> peut comporter des r&eacute;f&eacute;rences arri&egrave;res
+(<code>$N</code> ou <code>%N</code>) qui seront d&eacute;velopp&eacute;es.</p>
+
+<p>En utilisant la version courte</p>
+
+<example>
+[E=VAR]
+</example>
+
+<p>vous pouvez d&eacute;finir la variable d'environnement nomm&eacute;e
+<code>VAR</code> avec une valeur vide.</p>
+
+<p>Les variables d'environnement s'emploient dans diff&eacute;rents contextes,
+comme les programmes CGI, d'autres directives RewriteRule, ou des
+directives CustomLog.</p>
+
 <p>L'exemple suivant d&eacute;finit une variable d'environnement nomm&eacute;e 'image'
 avec une valeur de '1' si l'URI de la requ&ecirc;te correspond &agrave; un fichier
 image. Cette variable d'environnement est ensuite utilis&eacute;e pour exclure
@@ -146,7 +261,7 @@ est pr&eacute;sent&eacute;e &agrave; titre d'exemple et non de recommandation.</
 </section>
 
 <section id="flag_f"><title>F|forbidden</title>
-<p>L'utilisation du drapeau [F] permet de faire envoyer par Apache au
+<p>L'utilisation du drapeau [F] permet de faire envoyer par le serveur au
 client un code de statut "403 Forbidden". Le m&ecirc;me effet peut &ecirc;tre obtenu &agrave;
 l'aide de la directive <directive module="mod_access">Deny</directive>,
 mais ce drapeau offre plus de souplesse dans l'attribution d'un statut
@@ -164,10 +279,13 @@ qui signifie que l'URI de la requ&ecirc;te n'est pas modifi&eacute;. Il n'y a au
 raison de r&eacute;&eacute;crire un URI, si vous avez l'intention d'interdire la
 requ&ecirc;te.</p>
 
+<p>Lorsqu'on utilise [F], [L] est implicite - c'est &agrave; dire que la
+r&eacute;ponse est renvoy&eacute;e imm&eacute;diatement, et aucune autre r&egrave;gle n'est &eacute;valu&eacute;e.</p>
+
 </section>
 
 <section id="flag_g"><title>G|gone</title>
-<p>Le drapeau [G] permet de faire envoyer par Apache un code de statut
+<p>Le drapeau [G] permet de faire envoyer par le serveur un code de statut
 "410 Gone" avec la r&eacute;ponse. Ce code indique qu'une ressource qui &eacute;tait
 disponible auparavant ne l'est plus actuellement.</p>
 
@@ -177,7 +295,9 @@ disponible auparavant ne l'est plus actuellement.</p>
 <example>
 RewriteRule ancienne-ressource - [G,NC]
 </example>
-</section>
+
+<p>Lorsqu'on utilise [F], [L] est implicite - c'est &agrave; dire que la
+r&eacute;ponse est renvoy&eacute;e imm&eacute;diatement, et aucune autre r&egrave;gle n'est &eacute;valu&eacute;e.</section>
 
 <section id="flag_h"><title>H|handler</title>
 <p>Force le traitement de la requ&ecirc;te r&eacute;sultante par le gestionnaire
@@ -199,11 +319,11 @@ l'extrait suivant utilis&eacute; dans un contexte de niveau serveur permet de
 faire en sorte que les fichiers <code>.php</code> soient
 <em>affich&eacute;s</em> par <code>mod_php</code> dans le cas o&ugrave; ils font
 l'objet d'une requ&ecirc;te avec l'extension <code>.phps</code> :
-</p>
 
 <example>
 RewriteRule ^(/source/.+\.php)s$ $1 [H=application/x-httpd-php-source]
 </example>
+</p>
 
 <p>L'expression rationnelle ci-dessus -
 <code>^(/source/.+\.php)s$</code> - va correspondre &agrave; toute requ&ecirc;te qui
@@ -219,7 +339,10 @@ rationnelle.</p>
 <p>Lorsque le drapeau [L] est pr&eacute;sent, <module>mod_rewrite</module>
 arr&ecirc;te le traitement du jeu de r&egrave;gles. Cela signifie dans la plupart des
 situations que si la r&egrave;gle s'applique, aucune autre r&egrave;gle ne sera
-trait&eacute;e.</p>
+trait&eacute;e. Ce drapeau correspond &agrave; la commande Perl <code>last</code>, ou
+&agrave; la commande <code>break</code> en C. Utilisez ce drapeau pour indiquer
+que la r&egrave;gle courante doit &ecirc;tre appliqu&eacute;e imm&eacute;diatement, sans tenir
+compte des r&egrave;gles ult&eacute;rieures.</p>
 
 <p>Si vous utilisez des r&egrave;gles <directive
 module="mod_rewrite">RewriteRule</directive> dans des fichiers
@@ -253,15 +376,17 @@ la requ&ecirc;te concerne d&eacute;j&agrave; <code>index.php</code>, la directiv
 module="mod_rewrite">RewriteRule</directive> sera saut&eacute;e.</p>
 
 <example>
-RewriteCond %{REQUEST_URI} !=index\.php<br />
-RewriteRule ^(.*) index.php?req=$1 [L]
+RewriteBase /<br />
+RewriteCond %{REQUEST_URI} !=/index.php<br />
+RewriteRule ^(.*) /index.php?req=$1 [L,PT]
 </example>
 </section>
 
 <section id="flag_n"><title>N|next</title>
 <p>Le drapeau [N] provoque un red&eacute;marrage du traitement des r&egrave;gles
-depuis le d&eacute;but ; &agrave; utiliser avec pr&eacute;cautions car il peut provoquer un
-bouclage infini.
+depuis le d&eacute;but, en utilisant le r&eacute;sultat du jeu de r&egrave;gles, sous
+r&eacute;serve qu'il existe un point de d&eacute;marrage ; &agrave; utiliser avec pr&eacute;cautions
+car il peut provoquer un bouclage infini.
 </p>
 <p>
 Le drapeau [Next] peut servir, par exemple,
@@ -322,8 +447,22 @@ qui aurait provoqu&eacute; un code d'erreur "404 Not Found".
 <section id="flag_ns"><title>NS|nosubreq</title>
 <p>Le drapeau [NS] emp&ecirc;che la r&egrave;gle de s'appliquer aux sous-requ&ecirc;tes.
 Par exemple, une page incluse au moyen d'une SSI (Server
-Side Include) est une sous-requ&ecirc;te, et vous ne voudrez peut-&ecirc;tre pas que
-la r&eacute;&eacute;criture s'applique &agrave; ces sous-requ&ecirc;tes.</p>
+Side Include) est une sous-requ&ecirc;te, et vous ne voudrez probablement pas que
+la r&eacute;&eacute;criture s'applique &agrave; ces sous-requ&ecirc;tes. Ainsi, lorsque
+<module>mod_dir</module> recherche des informations &agrave; propos des
+fichiers par d&eacute;faut du r&eacute;pertoire (comme les fichiers
+<code>index.html</code>), il s'agit d'une sous-requ&ecirc;te interne, et vous
+ne d&eacute;sirez en g&eacute;n&eacute;ral pas que ces sous-requ&ecirc;tes soient r&eacute;&eacute;crites. Cette
+r&eacute;&eacute;criture
+n'est pas toujours utile pour les sous-requ&ecirc;tes, et peut m&ecirc;me causer des
+erreurs si l'ensemble du jeu de r&egrave;gles est appliqu&eacute;. L'utilisation de
+ce drapeau permet d'exclure les r&egrave;gles qui peuvent poser probl&egrave;me.</p>
+
+<p>Comment d&eacute;terminer si vous devez utiliser cette r&egrave;gle ou non : si
+vous pr&eacute;fixez les URLs avec des scripts CGI, afin de forcer leur
+traitement par le script CGI, vous vous exposez &agrave; des probl&egrave;mes (ou du
+moins &agrave; une surcharge significative) avec les sous-requ&ecirc;tes. Dans ces
+cas, vous devez utiliser ce drapeau.</p>
 
 <p>
 Les images, scripts java, ou fichiers css, charg&eacute;s en tant que partie
@@ -347,6 +486,19 @@ RewriteRule (.*)\.(jpg|gif|png) http://images.example.com$1.$2 [P]
 autrement dit, la requ&ecirc;te est imm&eacute;diatement envoy&eacute;e au mandataire, et
 toute r&egrave;gle ult&eacute;rieure sera ignor&eacute;e.</p>
 
+<p>
+Vous devez vous assurer que la cha&icirc;ne de substitution soit un URI valide
+(commen&ccedil;ant typiquement par <code>http://</code><em>nom-serveur</em>)
+qui puisse &ecirc;tre trait&eacute;e par le module <module>mod_proxy</module>. Dans
+le cas contraire, le module mandataire vous renverra une erreur.
+L'utilisation de ce drapeau impl&eacute;mente de mani&egrave;re plus puissante la
+directive <directive module="mod_proxy">ProxyPass</directive>, pour
+faire correspondre le contenu distant &agrave; l'espace de nommage du serveur
+local.</p>
+
+<p>Note: <module>mod_proxy</module> doit &ecirc;tre activ&eacute; pour pouvoir
+utiliser ce drapeau.</p>
+
 </section>
 
 <section id="flag_pt"><title>PT|passthrough</title>
@@ -360,7 +512,9 @@ module="mod_rewrite">RewriteRule</directive> est pass&eacute; &agrave; nouveau a
 syst&egrave;me de mise en correspondance des URLs avec le syst&egrave;me de fichiers,
 de fa&ccedil;on &agrave; ce que les syst&egrave;mes de mise en correspondance bas&eacute;s sur les
 chemins de fichiers, comme la directive <directive
-module="mod_alias">Alias</directive>, par exemple, puissent avoir une
+module="mod_alias">Alias</directive>, <directive
+module="core">Redirect</directive>, ou <directive 
+module="mod_alias">ScriptAlias</directive>, par exemple, puissent avoir une
 chance d'accomplir leur t&acirc;che.
 </p>
 
@@ -382,6 +536,16 @@ Dans l'exemple pr&eacute;c&eacute;dent, en l'absence du drapeau [PT], l'Alias au
 &eacute;t&eacute; ignor&eacute;, ce qui aurait provoqu&eacute; une erreur 'File not found'.
 </p>
 
+<p>Avec le drapeau <code>PT</code>, le drapeau <code>L</code> est
+implicite : la r&eacute;&eacute;criture s'arr&ecirc;tera afin de transmettre la requ&ecirc;te &agrave; la
+phase suivante du traitement.</p>
+
+<p>Notez que le drapeau <code>PT</code> est implicite dans des contextes
+de r&eacute;pertoire comme les sections <directive type="section"
+module="core">Directory</directive> ou les fichiers
+<code>.htaccess</code>. Le seul moyen de contourner ceci consiste &agrave;
+r&eacute;&eacute;crire vers <code>-</code>.</p>
+
 </section>
 
 <section id="flag_qsa"><title>QSA|qsappend</title>
@@ -409,21 +573,59 @@ autrement dit, la cha&icirc;ne de requ&ecirc;te (<code>query string</code>) exis
 </p>
 </section>
 
+<section id="flag_qsd"><title>QSD|qsdiscard</title>
+<p>
+Lorsque l'URI de la requ&ecirc;te contient une cha&icirc;ne de param&egrave;tres, et si
+l'URI cible n'en contient pas, le comportement par d&eacute;faut de la
+directive <directive
++module="mod_rewrite">RewriteRule</directive> consiste &agrave; copier cette
+cha&icirc;ne de param&egrave;tres dans l'URI cible. Avec le drapeau [QSD], la cha&icirc;ne
+de param&egrave;tres est supprim&eacute;e.
+</p>
+
+<p>Ce drapeau est disponible dans les versions 2.4.0 et sup&eacute;rieures.</p>
+
+<p>
+Lorsque les drapeaux [QSD] et [QSA] sont utilis&eacute;s ensemble, c'est le
+drapeau [QSD] qui l'emporte.
+</p>
+
+<p>
+Si l'URI cible poss&egrave;de une cha&icirc;ne de param&egrave;tres, le comportement par
+d&eacute;faut sera respect&eacute; - c'est &agrave; dire que la cha&icirc;ne de param&egrave;tres
+originale sera supprim&eacute;e et remplac&eacute;e par la cha&icirc;ne de param&egrave;tres de
+l'URI cible.
+</p>
+
+</section>
+
+
 <section id="flag_r"><title>R|redirect</title>
 <p>
 L'utilisation du drapeau [R] provoque l'envoi d'une redirection au
 navigateur. Si une URL pleinement qualifi&eacute;e (FQDN - fully qualified domain name)
  est sp&eacute;cifi&eacute;e (c'est &agrave; dire incluant <code>http://nom-du-serveur/</code>),
  une redirection sera effectu&eacute;e vers cette adresse. Dans le cas contraire,
- c'est le nom du serveur local qui sera utilis&eacute; pour g&eacute;n&eacute;rer l'URL envoy&eacute;e avec la
-redirection.
+ le protocole courant, le nom du serveur et le num&eacute;ro de port seront
+ utilis&eacute;s pour g&eacute;n&eacute;rer l'URL envoy&eacute;e avec la redirection.
 </p>
 
-<p>
-Un code de statut entre 300 et 399 peut &ecirc;tre sp&eacute;cifi&eacute;, le code 302 &eacute;tant
-utilis&eacute; par d&eacute;faut si aucun code n'est sp&eacute;cifi&eacute;.
+<p><em>Tout</em> code de statut de r&eacute;ponse HTTP valide peut &ecirc;tre
+sp&eacute;cifi&eacute;, en utilisant la syntaxe [R=305], le code de statut 302 &eacute;tant
+utilis&eacute; par d&eacute;faut si aucun code n'est sp&eacute;cifi&eacute;. Le code de statut
+sp&eacute;cifi&eacute; n'est pas n&eacute;cessairement un code de statut de redirection (3xx).
 </p>
 
+<p>Si le code de statut est en dehors de la plage des codes de
+redirection (300-399), la cha&icirc;ne de substitution est enti&egrave;rement
+supprim&eacute;e, et la r&eacute;&eacute;criture s'arr&ecirc;te comme si le drapeau <code>L</code>
+&eacute;tait utilis&eacute;.</p>
+
+<p>En plus des codes de statut de r&eacute;ponse, vous pouvez sp&eacute;cifier les
+codes de redirection en utilisant leurs noms symboliques :
+<code>temp</code> (d&eacute;faut), <code>permanent</code>, ou
+<code>seeother</code>.</p>
+
 <p>
 Vous utiliserez presque toujours [R] en conjonction avec [L] (c'est &agrave;
 dire [R,L]), car employ&eacute; seul, le drapeau [R] pr&eacute;fixe l'URI avec
@@ -457,7 +659,11 @@ RewriteRule (.*\.html) docs.php?$1
 <directive module="mod_rewrite">RewriteCond</directive> ne s'applique
 qu'&agrave; la r&egrave;gle qui la suit imm&eacute;diatement. Ainsi, si vous voulez
 qu'une directive <code>RewriteCond</code> s'applique &agrave; plusieurs r&egrave;gles
-<code>RewriteRule</code>, vous pouvez utiliser le drapeau [Skip].</p>
+<code>RewriteRule</code>, une technique possible consiste &agrave; inverser ces
+conditions et &agrave; utiliser le drapeau [Skip]. Cette technique permet
+d'&eacute;laborer des pseudo-constructions if-then-else : la derni&egrave;re r&egrave;gle du
+bloc then contiendra <code>skip=N</code>, o&ugrave; N est le nombre de r&egrave;gles
+contenues dans le bloc else.</p>
 
 </section>
 
@@ -490,8 +696,17 @@ type="section" module="core">FilesMatch</directive>. Il faut toujours
 envisager la possibilit&eacute; d'une solution alternative &agrave; un probl&egrave;me avant
 d'avoir recours &agrave; la r&eacute;&eacute;criture, qui sera toujours moins efficace qu'une
 solution alternative.</p>
-</section>
+
+<p>
+Dans un contexte de niveau r&eacute;pertoire, n'utilisez que <code>-</code>
+(tiret) comme substitution, <em>dans toute la s&eacute;quence de r&eacute;&eacute;criture de
+mod_rewrite</em>, sinon le type MIME d&eacute;fini avec ce drapeau
+sera perdu suite &agrave; un retraitement interne (y compris les s&eacute;quences de
+r&eacute;&eacute;criture suivantes de mod_rewrite). Dans ce contexte, vous pouvez
+utiliser le drapeau <code>L</code> pour terminer la s&eacute;quence
+<em>courante</em> de r&eacute;&eacute;criture de mod_rewrite.</p>
 
 </section>
+
 </manualpage>