]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
fr doc rebuild.
authorLucien Gentis <lgentis@apache.org>
Mon, 29 Jun 2026 16:13:37 +0000 (16:13 +0000)
committerLucien Gentis <lgentis@apache.org>
Mon, 29 Jun 2026 16:13:37 +0000 (16:13 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1935718 13f79535-47bb-0310-9956-ffa450edef68

27 files changed:
docs/manual/howto/cgi.html.fr.utf8
docs/manual/howto/cgi.xml.meta
docs/manual/howto/ssi.xml.meta
docs/manual/install.html.fr.utf8
docs/manual/install.xml.meta
docs/manual/logs.html.fr.utf8
docs/manual/logs.xml.ja
docs/manual/logs.xml.ko
docs/manual/logs.xml.tr
docs/manual/mod/event.html.fr.utf8
docs/manual/mod/event.xml.meta
docs/manual/mod/mpm_netware.html.fr.utf8
docs/manual/mod/mpm_netware.xml.meta
docs/manual/mod/mpm_winnt.html.fr.utf8
docs/manual/mod/mpm_winnt.xml.meta
docs/manual/mod/mpmt_os2.html.fr.utf8
docs/manual/mod/mpmt_os2.xml.meta
docs/manual/mod/prefork.html.fr.utf8
docs/manual/mod/prefork.xml.meta
docs/manual/mod/worker.html.fr.utf8
docs/manual/mod/worker.xml.meta
docs/manual/platform/netware.html.fr.utf8
docs/manual/platform/netware.xml.meta
docs/manual/rewrite/flags.xml.fr
docs/manual/rewrite/intro.html.fr.utf8
docs/manual/rewrite/intro.xml.meta
docs/manual/rewrite/tech.xml.fr

index 8194cc64827a09c83c518264a6d2e4d2a4537e4a..55c34f9ca692fc8b2cad8bb33a67c5d7a053adfa 100644 (file)
@@ -29,8 +29,6 @@
 <a href="../ja/howto/cgi.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
 <a href="../ko/howto/cgi.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
 </div>
-<div class="outofdate">Cette traduction peut &ecirc;tre p&eacute;rim&eacute;e. V&eacute;rifiez la version
-            anglaise pour les changements r&eacute;cents.</div>
 </div>
 <div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif"> <a href="#intro">Introduction</a></li>
 <li><img alt="" src="../images/down.gif"> <a href="#configuring">Configurer httpd pour autoriser CGI</a></li>
 <h2 id="configuring">Configurer httpd pour autoriser CGI <a title="Lien permanent" href="#configuring" class="permalink">&para;</a></h2>
     
 
-    <p>httpd doit &ecirc;tre configur&eacute; pour permettre l'ex&eacute;cution des
-    programmes CGI, pour que vos programmes CGI puissent fonctionner
-    correctement. Il existe plusieurs m&eacute;thodes pour y parvenir.</p>
-
-    <div class="warning">Note: si httpd a &eacute;t&eacute; compil&eacute; avec le support
-    des modules partag&eacute;s (DSO), vous devez vous assurer que le module CGI est
-    charg&eacute; ; vous devez pour cela v&eacute;rifier que la directive <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> correspondante n'a pas &eacute;t&eacute;
-    comment&eacute;e dans votre <code>httpd.conf</code>. Une directive correcte
-    doit ressembler &agrave; ceci :
-
-    <pre class="prettyprint lang-config">LoadModule cgid_module modules/mod_cgid.so</pre>
-
-
+    <p>La configuration de httpd doit autoriser l&rsquo;ex&eacute;cution de CGI pour que les
+    programmes CGI fonctionnent. Il existe plusieurs mani&egrave;res d&rsquo;y parvenir, qui
+    sont d&eacute;crites ci-apr&egrave;s.</p>
+
+    <p>La prise en charge de CGI est assur&eacute;e par deux modules&nbsp;:
+    <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code> et <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>.
+    <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code> utilise un d&eacute;mon externe d&eacute;di&eacute; pour g&eacute;rer les
+    processus CGI et est requis lorsque httpd utilise un MPM thread&eacute; (tel que
+    <code class="module"><a href="../mod/event.html">event</a></code> ou <code class="module"><a href="../mod/worker.html">worker</a></code>). <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>
+    ex&eacute;cute les programmes CGI directement depuis le processus du serveur et est
+    utilis&eacute; avec les MPMs non thread&eacute;s tels que <code class="module"><a href="../mod/prefork.html">prefork</a></code>, ou
+    sous Windows. Du point de vue de la configuration, ils sont interchangeables
+    &mdash;&nbsp;les directives sont les m&ecirc;mes. Voir les pages de r&eacute;f&eacute;rence de
+    <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> et <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code> pour les d&eacute;tails de
+    l&rsquo;impl&eacute;mentation.</p>
+
+    <div class="warning">Si httpd a &eacute;t&eacute; compil&eacute; avec le support des modules
+    partag&eacute;s (DSO), vous devez vous assurer que le module appropri&eacute; est charg&eacute; ;
+    vous devez pour cela v&eacute;rifier que la directive <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> correspondante n'a pas &eacute;t&eacute; comment&eacute;e
+    dans votre <code>httpd.conf</code>. Pour un MPM thread&eacute;&nbsp;:
+
+<div class="example"><pre class="prettyprint lang-config">LoadModule cgid_module modules/mod_cgid.so</pre>
+</div>
 
-     Sous Windows, ou si l'on utilise un module MPM non-thread&eacute; comme prefork,
-     une directive correctement configur&eacute;e sera du style :
+     Pour Windows, ou un MPM non thread&eacute; comme prefork&nbsp;:
 
-    <pre class="prettyprint lang-config">LoadModule cgi_module modules/mod_cgi.so</pre>
+<div class="example"><pre class="prettyprint lang-config">LoadModule cgi_module modules/mod_cgi.so</pre>
+</div>
 </div>
 
 
       <p>La directive <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code> se pr&eacute;sente comme suit
       :</p>
 
-      <pre class="prettyprint lang-config">ScriptAlias "/cgi-bin/" "/usr/local/apache2/cgi-bin/"</pre>
-
+<div class="example"><pre class="prettyprint lang-config">ScriptAlias "/cgi-bin/" "/usr/local/apache2/cgi-bin/"</pre>
+</div>
 
       <p>Cet exemple est tir&eacute; de votre fichier de configuration
       <code>httpd.conf</code> par d&eacute;faut, si vous avez install&eacute; httpd
       tant que programme CGI.</p>
 
       <p>Par exemple, si une requ&ecirc;te pour l'URL
-      <code>http://www.example.com/cgi-bin/test.pl</code> est
-      effectu&eacute;e, httpd tentera d'ex&eacute;cuter le fichier
-      <code>/usr/local/apache2/cgi-bin/test.pl</code> et en renverra la
-      sortie. Bien entendu, le fichier doit exister, &ecirc;tre ex&eacute;cutable, et
-      retourner sa sortie d'une mani&egrave;re particuli&egrave;re, sinon httpd
-      renverra un message d'erreur.</p>
+      <code>http://www.example.com/cgi-bin/test.py</code> est effectu&eacute;e, httpd
+      tentera d'ex&eacute;cuter le fichier
+      <code>/usr/local/apache2/cgi-bin/test.py</code> et en renverra la sortie.
+      Le fichier doit exister, &ecirc;tre ex&eacute;cutable, et produire une sortie sous le
+      format attendu, sinon httpd renverra un message d'erreur.</p>
     
 
     <h3 id="nonscriptalias">CGI en dehors des r&eacute;pertoires ScripAlias</h3>
       l'ex&eacute;cution des programmes CGI est permise depuis un r&eacute;pertoire
       particulier :</p>
 
-      <pre class="prettyprint lang-config">&lt;Directory "/usr/local/apache2/htdocs/somedir"&gt;
-    Options +ExecCGI
+<div class="example"><pre class="prettyprint lang-config">&lt;Directory "/usr/local/apache2/htdocs/somedir"&gt;
+Options +ExecCGI
 &lt;/Directory&gt;</pre>
-
+</div>
 
       <p>La directive ci-dessus indique &agrave; httpd qu'il doit permettre
       l'ex&eacute;cution des fichiers CGI. Vous devez aussi indiquer au serveur
       quels fichiers sont des fichiers CGI. La directive <code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code> suivante indique au
       serveur qu'il doit traiter tous les fichiers poss&eacute;dant une
-      extension <code>cgi</code> ou <code>pl</code> en tant que
+      extension <code>cgi</code> ou <code>py</code> en tant que
       programmes CGI :</p>
 
-      <pre class="prettyprint lang-config">AddHandler cgi-script .cgi .pl</pre>
-
+<div class="example"><pre class="prettyprint lang-config">AddHandler cgi-script .cgi .py</pre>
+</div>
     
 
     <h3 id="htaccess">Fichiers .htaccess</h3>
       r&eacute;pertoire utilisateur, vous pouvez utiliser la configuration
       suivante :</p>
 
-      <pre class="prettyprint lang-config">&lt;Directory "/home/*/public_html"&gt;
-    Options +ExecCGI
-    AddHandler cgi-script .cgi
+<div class="example"><pre class="prettyprint lang-config">&lt;Directory "/home/*/public_html"&gt;
+Options +ExecCGI
+AddHandler cgi-script .cgi
 &lt;/Directory&gt;</pre>
-
+</div>
 
       <p>Pour indiquer un sous-r&eacute;pertoire <code>cgi-bin</code> d'un
       r&eacute;pertoire utilisateur o&ugrave; tout fichier sera trait&eacute; en tant que
       programme CGI, vous pouvez utiliser ceci :</p>
 
-      <pre class="prettyprint lang-config">&lt;Directory "/home/*/public_html/cgi-bin"&gt;
-    Options ExecCGI
-    SetHandler cgi-script
+<div class="example"><pre class="prettyprint lang-config">&lt;Directory "/home/*/public_html/cgi-bin"&gt;
+Options ExecCGI
+SetHandler cgi-script
 &lt;/Directory&gt;</pre>
-
+</div>
 
     
 
 <h2 id="writing">Ecrire un programme CGI <a title="Lien permanent" href="#writing" class="permalink">&para;</a></h2>
     
 
-    <p>Il y a deux diff&eacute;rences principales entre la programmation
-    "standard" et la programmation CGI.</p>
+    <p>La programmation CGI diff&egrave;re de la programmation
+    "standard" sur deux points.</p>
 
     <p>En premier lieu, toute sortie de votre programme CGI doit &ecirc;tre
     pr&eacute;c&eacute;d&eacute;e d'un en-t&ecirc;te <a class="glossarylink" href="../glossary.html#mime-type" title="voir glossaire">MIME-type</a>. Il s'agit d'un
     <p>En second lieu, votre sortie doit &ecirc;tre en HTML, ou tout autre
     format qu'un navigateur est en mesure d'afficher. La plupart du
     temps, il s'agira de HTML, mais occasionnellement, vous pouvez &ecirc;tre
-    amen&eacute; &agrave; &eacute;crire un programme CGI qui renvoie une image gif, ou un
+    amen&eacute; &agrave; &eacute;crire un programme CGI qui renvoie une image GIF, ou un
     autre type de contenu non-HTML.</p>
 
     <p>A part ces deux diff&eacute;rences, un programme CGI ressemblera &agrave; tout
       <p>L'exemple suivant est un exemple de programme CGI qui permet
       d'afficher une ligne de caract&egrave;res dans votre navigateur. Ecrivez
       ce qui suit, enregistrez le dans un fichier nomm&eacute;
-      <code>premier.pl</code>, et placez le dans votre r&eacute;pertoire
+      <code>premier.py</code>, et placez le dans votre r&eacute;pertoire
       <code>cgi-bin</code>.</p>
 
-      <pre class="prettyprint lang-perl">#!/usr/bin/perl
-print "Content-type: text/html\n\n";
-print "Hello, World.";</pre>
-
+<div class="example"><pre class="prettyprint lang-python">#!/usr/bin/env python3
+print("Content-type: text/html\n")
+print("Hello, World.")</pre>
+</div>
 
-      <p>M&ecirc;me si Perl ne vous est pas familier, vous devriez &ecirc;tre
-      capable de comprendre le fonctionnement de ce programme. La
-      premi&egrave;re ligne indique &agrave; httpd (ou &agrave; toute interface &agrave; partir de
-      laquelle le programme s'ex&eacute;cute) que ce programme peut &ecirc;tre
-      ex&eacute;cut&eacute; en fournissant son fichier &agrave; l'interpr&eacute;teur
-      <code>/usr/bin/perl</code>. La seconde ligne affiche la
-      d&eacute;claration du type de contenu consid&eacute;r&eacute;, suivie de deux paires
-      "Retour chariot - Nouvelle ligne". Ceci a pour effet d'ins&eacute;rer une
-      ligne vide apr&egrave;s l'en-t&ecirc;te pour marquer la fin des en-t&ecirc;tes HTTP,
-      et le d&eacute;but du corps du document. La troisi&egrave;me ligne affiche la
-      cha&icirc;ne de caract&egrave;res "Bonjour tout le monde . . .". Et c'est tout
-      ce dont vous avez besoin.</p>
+      <p>La premi&egrave;re ligne indique au syst&egrave;me d&rsquo;exploitation quel interpr&eacute;teur
+      utiliser. La premi&egrave;re invocation de print affiche l&rsquo;en-t&ecirc;te content-type
+      suivi d&rsquo;une ligne vide (le <code>\n</code> dans la cha&icirc;ne et la nouvelle
+      ligne qu&rsquo;ajoute <code>print()</code>), qui mat&eacute;rialise la fin des en-t&ecirc;tes
+      HTTP. La seconde invocation de print affiche le corps. C&rsquo;est l&agrave; tout ce
+      dont un programme CGI a besoin pour produire une r&eacute;ponse.</p>
 
       <p>Si vous ouvrez votre navigateur favori et lui indiquez
       l'adresse</p>
 
       <div class="example"><p><code>
-        http://www.example.com/cgi-bin/premier.pl
+        http://www.example.com/cgi-bin/premier.py
       </code></p></div>
 
       <p>ou toute autre URL correspondant &agrave; votre programme CGI, Vous
@@ -281,9 +282,8 @@ print "Hello, World.";</pre>
 <h2 id="troubleshoot">Mais &ccedil;a ne marche toujours pas ! <a title="Lien permanent" href="#troubleshoot" class="permalink">&para;</a></h2>
     
 
-    <p>Vous devriez voir au moins une des quatre sorties suivantes dans
-    votre navigateur lorsque vous essayez d'acc&eacute;der &agrave; votre programme
-    CGI depuis le web :</p>
+    <p>Quatre sorties basiques pourront appara&icirc;tre dans votre navigateur lorsque
+    vous essayez d'acc&eacute;der &agrave; votre programme CGI depuis le web :</p>
 
     <dl>
       <dt>Le flux de sortie de votre programme CGI</dt>
@@ -328,9 +328,8 @@ print "Hello, World.";</pre>
       <code>nobody</code>, il suffit de lui attribuer des droits
       d'ex&eacute;cution pour tout le monde :</p>
 
-      <div class="example"><p><code>
-        chmod a+x premier.pl
-      </code></p></div>
+<div class="example"><pre class="prettyprint lang-bash">chmod a+x first.py</pre>
+</div>
 
       <p>En outre, si votre programme doit pouvoir acc&eacute;der en lecture
       et/ou &eacute;criture &agrave; d'autres fichiers, ces derniers devront avoir les
@@ -357,12 +356,12 @@ print "Hello, World.";</pre>
       CGI.</p>
 
       <p>Un exemple typique de sp&eacute;cification de programme est le chemin
-      vers l'interpr&eacute;teur de script (souvent <code>perl</code>) que l'on
+      vers l'interpr&eacute;teur de script (souvent <code>python3</code>) que l'on
       trouve &agrave; la premi&egrave;re ligne de votre programme CGI et qui va
       ressembler &agrave; ceci :</p>
 
-      <pre class="prettyprint lang-perl">#!/usr/bin/perl</pre>
-
+<div class="example"><pre class="prettyprint lang-python">#!/usr/bin/env python3</pre>
+</div>
 
       <p>Assurez-vous qu'il s'agit bien du chemin correct vers
       l'interpr&eacute;teur.</p>
@@ -407,10 +406,10 @@ print "Hello, World.";</pre>
 
       <div class="example"><p><code>
       cd /usr/local/apache2/cgi-bin<br>
-      ./premier.pl
+      ./premier.py
       </code></p></div>
 
-      <p>(N'invoquez pas l'interpr&eacute;teur <code>perl</code>. Le shell et
+      <p>(N'invoquez pas l'interpr&eacute;teur <code>python3</code>. Le shell et
       httpd doivent &ecirc;tre capable de le d&eacute;terminer &agrave; partir de <a href="#pathinformation">l'information sur le chemin</a> situ&eacute;e sur
       la premi&egrave;re ligne du script.)</p>
 
@@ -456,7 +455,7 @@ print "Hello, World.";</pre>
 
       <p>Si vous ne ma&icirc;trisez pas le fonctionnement de suexec, il vous
       est d&eacute;conseill&eacute; de l'utiliser. Pour d&eacute;sactiver suexec, supprimer
-      simplement (ou renommez) l'ex&eacute;cutable <code class="program"><a href="../programs/suexec.html">suexec</a></code>
+      (ou renommez) l'ex&eacute;cutable <code class="program"><a href="../programs/suexec.html">suexec</a></code>
       point&eacute; par <code>SUEXEC_BIN</code> et red&eacute;marrez le serveur. Si
       apr&egrave;s une lecture de <a href="../suexec.html">suexec</a>, vous
       d&eacute;cidez quand-m&ecirc;me de l'utiliser, tapez la commande <code>suexec
@@ -501,7 +500,7 @@ print "Hello, World.";</pre>
       variables requises se trouve dans la <a href="https://www.rfc-editor.org/rfc/rfc3875">RFC 3875</a> (Common Gateway
       Interface).</p>
 
-      <p>Ce programme CGI basique en Perl permet d'afficher toutes les
+      <p>Ce programme CGI basique en Python permet d'afficher toutes les
       variables d'environnement qui sont &eacute;chang&eacute;es. Deux programmes
       similaires sont fournis avec la distribution de httpd et situ&eacute;s
       dans le r&eacute;pertoire <code>cgi-bin</code>.
@@ -513,15 +512,13 @@ print "Hello, World.";</pre>
       variables d'environnement</a> aux variables de base fournies par
       d&eacute;faut.</p>
 
-      <pre class="prettyprint lang-perl">#!/usr/bin/perl
-use strict;
-use warnings;
-
-print "Content-type: text/html\n\n";
-foreach my $key (keys %ENV) {
-    print "$key --&gt; $ENV{$key}&lt;br&gt;";
-}</pre>
+<div class="example"><pre class="prettyprint lang-python">#!/usr/bin/env python3
+import os
 
+print("Content-type: text/html\n")
+for key, value in os.environ.items():
+print(f"{key} --&gt; {value}&lt;br&gt;")</pre>
+</div>
     
 
     <h3 id="stdin">STDIN et STDOUT</h3>
@@ -579,15 +576,13 @@ foreach my $key (keys %ENV) {
     partie du travail de base pour vous. Ceci vous permettra de diminuer
     le nombre d'erreurs et d'acc&eacute;l&eacute;rer le d&eacute;veloppement.</p>
 
-    <p>Si vous &eacute;crivez des programmes CGI en Perl, des modules sont &agrave;
-    votre disposition &agrave; <a href="http://www.cpan.org/">CPAN</a>. A ce
-    sujet, le module le plus populaire est <code>CGI.pm</code>. Vous
-    pouvez aussi essayer <code>CGI::Lite</code>, qui impl&eacute;mente les
-    fonctionnalit&eacute;s strictement n&eacute;cessaires, mais suffisantes pour
-    la majorit&eacute; des programmes.</p>
-
-    <p>Si vous &eacute;crivez des programmes CGI en C, vous disposez de nombreuses
-    options. L'une d'elles est la biblioth&egrave;que <code>CGIC</code> de <a href="https://web.mit.edu/wwwdev/www/cgic.html">https://web.mit.edu/wwwdev/www/cgic.html</a>.</p>
+    <p>Si vous &eacute;crivez des programmes CGI en Python, le module <code>cgi</code>
+    de la biblioth&egrave;que standard (obsol&egrave;te dans Python 3.11, supprim&eacute; dans Python
+    3.13) prenait en charge l&rsquo;analyse de formulaire. Avec les versions actuelles
+    de Python, utilisez le module <code>urllib.parse</code> pour analyser les
+    cha&icirc;ne de param&egrave;tres et les donn&eacute;es de formulaire. Pour des applications
+    plus complexes, orientez-vous vers un cadriciel WSGI l&eacute;ger, bien que cela
+    aille au-del&agrave; du domaine de la CGI traditionnelle.</p>
   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
 <div class="section">
 <h2 id="moreinfo">Pour plus d'informations <a title="Lien permanent" href="#moreinfo" class="permalink">&para;</a></h2>
@@ -605,10 +600,10 @@ foreach my $key (keys %ENV) {
     programme CGI a &eacute;t&eacute; &eacute;crit, et, si possible, son code source. Ceci
     permettra une r&eacute;solution plus ais&eacute;e de votre probl&egrave;me.</p>
 
-    <p>Notez que les questions &agrave; propos de probl&egrave;mes CGI ne doivent
+    <div class="note">Les questions &agrave; propos de probl&egrave;mes CGI ne doivent
     <strong>jamais</strong> &ecirc;tre post&eacute;es dans la base de donn&eacute;es de
     bogues de httpd, &agrave; moins que vous ne soyez s&ucirc;r d'avoir trouv&eacute; un
-    probl&egrave;me dans le code source de httpd.</p>
+    probl&egrave;me dans le code source de httpd.</div>
   </div></div>
 <div class="bottomlang">
 <p><span>Langues Disponibles: </span><a href="../en/howto/cgi.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
index b7cd1c98001e08addb68c627925026d0e113f87f..c7cff594303832b3c02d0cfeb12f68c2d9b8a21d 100644 (file)
@@ -9,7 +9,7 @@
   <variants>
     <variant>en</variant>
     <variant outdated="yes">es</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
     <variant outdated="yes">ja</variant>
     <variant outdated="yes">ko</variant>
   </variants>
index 9b8292c558495653aba33f17db17bcc45157ff05..71d5a503439139ca1af9e8c325ff1adaf49f7fad 100644 (file)
@@ -9,7 +9,7 @@
   <variants>
     <variant>en</variant>
     <variant outdated="yes">es</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
     <variant outdated="yes">ja</variant>
     <variant outdated="yes">ko</variant>
   </variants>
index 8c27a80bf06a627dc6d8d587eb6a8b32e408c96a..070b5fa6dad9f029a857e63c53336fd3925cc86a 100644 (file)
 <a href="./pt-br/install.html" hreflang="pt-br" rel="alternate" title="Portugu&ecirc;s (Brasil)">&nbsp;pt-br&nbsp;</a> |
 <a href="./tr/install.html" hreflang="tr" rel="alternate" title="T&uuml;rk&ccedil;e">&nbsp;tr&nbsp;</a></p>
 </div>
-<div class="outofdate">Cette traduction peut &ecirc;tre p&eacute;rim&eacute;e. V&eacute;rifiez la version
-            anglaise pour les changements r&eacute;cents.</div>
 
 
-    <p>Ce document couvre l'installation et la compilation du serveur
-    HTTP Apache
-    sur les syst&egrave;mes Unix et similaires seulement. Pour la compilation et
-    l'installation sous Windows, voir <a href="platform/windows.html">Utiliser le serveur HTTP Apache avec Microsoft
-    Windows</a> et <a href="platform/win_compiling.html">Compilation
-    d'Apache sous Microsoft Windows</a>. Pour les autres plateformes, se
-    r&eacute;f&eacute;rer &agrave; la documentation par
-     <a href="platform/">plateforme</a>.</p>
+    <p>Le serveur HTTP Apache est distribu&eacute; sous forme de code source. Ce
+    document d&eacute;crit la construction et l&rsquo;installation du serveur &agrave; partir des
+    sources sous Unix et les syst&egrave;mes de la famille d&rsquo;Unix. Pour Windows, voir
+    <a href="platform/windows.html">Utiliser le serveur HTTP Apache avec
+    Microsoft Windows</a> et <a href="platform/win_compiling.html">Compilation
+    de httpd sous Microsoft Windows</a>. Pour les autres plateformes, se
+    r&eacute;f&eacute;rer &agrave; la documentation par <a href="platform/">plateforme</a>.</p>
 
-    <p>Apache httpd utilise <code>libtool</code> et <code>autoconf</code>
-    afin de cr&eacute;er un environnement de construction similaire &agrave; la plupart
-    des projets Open Source .</p>
+    <p>Si vous installez httpd depuis un paquet de distribution (RPM, DEB,
+    etc.), l&rsquo;organisation de la configuration et les valeurs par d&eacute;faut peuvent
+    &ecirc;tre diff&eacute;rentes de ce qui est d&eacute;crit ici. Voir <a href="#thirdp">paquets
+    tiers</a> ci-apr&egrave;s et consultez la documentation de votre distribution pour
+    les d&eacute;tails sp&eacute;cifiques &agrave; la plateforme.</p>
 
     <p>Si vous effectuez une mise &agrave; jour depuis une version mineure vers
     la suivante (par exemple, 2.4.66 &agrave; 2.4.67), veuillez passer &agrave; la section
 <li><img alt="" src="./images/down.gif"> <a href="#upgrading">Mise &agrave; jour</a></li>
 <li><img alt="" src="./images/down.gif"> <a href="#thirdp">Paquets tiers</a></li>
 </ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="programs/configure.html">Configuration de l'arborescence
-       des sources</a></li><li><a href="invoking.html">D&eacute;marrer Apache httpd</a></li><li><a href="stopping.html">Arr&ecirc;t et red&eacute;marrage</a></li></ul></div>
+       des sources</a></li><li><a href="invoking.html">D&eacute;marrer httpd</a></li><li><a href="stopping.html">Arr&ecirc;t et red&eacute;marrage</a></li></ul></div>
 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif"></a></div>
 <div class="section">
 <h2 id="overview">Aper&ccedil;u pour les plus press&eacute;s <a title="Lien permanent" href="#overview" class="permalink">&para;</a></h2>
 
-    <dl>
-    <dt>Installation sous Fedora/CentOS/Red Hat Enterprise Linux</dt>
-    <dd>
-    <pre class="prettyprint lang-sh">sudo dnf install httpd
-
-# D&eacute;marrage du service
-sudo systemctl start httpd
-
-# Arr&ecirc;t du service
-sudo systemctl stop httpd
-
-# Red&eacute;marrage du service
-sudo systemctl restart httpd</pre>
-
-
-    <div class="warning">Voir la <a href="https://docs.fedoraproject.org/en-US/quick-docs/getting-started-with-apache-http-server/index.html">documentation
-    du projet Fedora</a> pour des informations sp&eacute;cifiques &agrave; cette plateforme.</div>
-    </dd>
-
-    <dt>Installation sous Ubuntu/Debian</dt>
-    <dd>
-<pre class="prettyprint lang-sh">sudo apt install apache2
-
-# D&eacute;marrage du service
-sudo systemctl start apache2
-
-# Arr&ecirc;t du service
-sudo systemctl stop apache2
-
-# Red&eacute;marrage du service
-sudo systemctl restart apache2</pre>
-
-
-    <div class="warning">Voir la <a href="https://ubuntu.com/tutorials/install-and-configure-apache">documentation
-    d&rsquo;Ubuntu</a> pour des informations sp&eacute;cifiques &agrave; cette plateforme.</div>
-
-    </dd>
-
-    <dt>Installation &agrave; partir des sources</dt>
-    <dd>
-
     <table>
       
       <tr>
@@ -171,20 +129,12 @@ $ cd httpd-NN</pre>
 
            <p>Chaque &eacute;tape du processus de compilation et d'installation est
            d&eacute;crite plus en d&eacute;tails ci-dessous, &agrave; commencer par les pr&eacute;requis
-           pour compiler et installer Apache httpd.</p>
-    </dd>
-    </dl>
-
-    <div class="warning">L'installation sous votre plateforme favorite n'est pas
-    trait&eacute;e ici ? N'h&eacute;sitez pas &agrave; nous <a href="https://httpd.apache.org/docs-project/">aider &agrave; compl&eacute;ter cette
-    documentation</a> en nous faisant profiter de votre exp&eacute;rience.</div>
-
-
+           pour compiler et installer httpd.</p>
 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif"></a></div>
 <div class="section">
 <h2 id="requirements">Pr&eacute;requis <a title="Lien permanent" href="#requirements" class="permalink">&para;</a></h2>
 
-    <p>Les pr&eacute;requis pour la construction et l&rsquo;ex&eacute;cution d'Apache httpd sont les
+    <p>Les pr&eacute;requis pour la construction et l&rsquo;ex&eacute;cution de httpd sont les
     suivants:</p>
 
     <dl>
@@ -204,17 +154,16 @@ $ cd httpd-NN</pre>
       install&eacute;es d'APR et APR-Util.</dd>
 
       <dt>Biblioth&egrave;que d'expressions rationnelles compatibles Perl
-      (PCRE)</dt>
-      <dd>Cette biblioth&egrave;que est n&eacute;cessaire mais n'est plus fournie avec la
-      distribution de httpd. T&eacute;l&eacute;chargez le code source depuis <a href="https://www.pcre.org/">https://www.pcre.org</a> ou installez
-      un portage du paquet. Si votre suite de compilation ne trouve pas
-      le script pcre-config install&eacute; au cours du processus de
-      construction de PCRE, indiquez son chemin via l'option
-      <code>--with-pcre</code> du script <code>./configure</code>. Sur
-      certaines plateformes, vous devrez
-      peut-&ecirc;tre installer les paquets <code>-dev</code> correspondants
-      pour permettre la compilation de httpd avec la version
-      install&eacute;e de PCRE.</dd>
+      (PCRE2)</dt>
+      <dd>Cette biblioth&egrave;que est n&eacute;cessaire mais n'est pas fournie avec la
+      distribution de httpd. T&eacute;l&eacute;chargez le code source depuis <a href="https://github.com/PCRE2Project/pcre2">https://github.com/PCRE2Project/pcre2</a>
+      ou installez le avec le gestionnaire de paquets de votre syst&egrave;me. Si votre
+      syst&egrave;me de construction ne trouve pas le script <code>pcre2-config</code>
+      install&eacute; par la construction de PCRE2, pointez vers lui en utilisant
+      l&rsquo;option <code>--with-pcre</code>. Sur certaines plateformes, vous devrez
+      peut-&ecirc;tre installer le paquet <code>-dev</code> correspondant (par exemple
+      <code>libpcre2-dev</code> ou <code>pcre2-devel</code>) pour permettre la
+      construction de httpd avec votre version install&eacute;e de PCRE2.</dd>
 
       <dt>Espace disque</dt>
       <dd>Assurez-vous d'avoir au moins 200 Mo d'espace disque disponible
@@ -233,13 +182,11 @@ $ cd httpd-NN</pre>
       les outils de construction de base tels que <code>make</code>.</dd>
 
       <dt>Connaissance de l'heure exacte</dt>
-      <dd>Les &eacute;l&eacute;ments du protocole HTTP font r&eacute;f&eacute;rence &agrave; l'heure du jour. Par
-      cons&eacute;quent, il est n&eacute;cessaire d'&eacute;quiper votre syst&egrave;me d'un dispositif de
-      synchronisation du temps. &Agrave; cet effet, la plupart des distributions
-      modernes de Linux fournissent <code>systemd-timesyncd</code> ou
-      <code>chrony</code>. Voir la <a href="https://www.ntp.org">page d'accueil
-      de NTP</a> pour plus de d&eacute;tails &agrave; propos du logiciel NTP et des serveurs
-      de temps publics.</dd>
+      <dd>Les ent&ecirc;tes du protocole HTTP utilisent un horodatage&nbsp;; l&rsquo;horloge de
+      votre syst&egrave;me doit donc &ecirc;tre pr&eacute;cise. La plupart des distributions de
+      Linux activent <code>systemd-timesyncd</code> ou <code>chrony</code> par
+      d&eacute;faut. V&eacute;rifiez que la synchronisation du temps est active sur votre
+      syst&egrave;me avant d&rsquo;exploiter un serveur en production.</dd>
 
       <dt><a href="https://www.perl.org/">Perl 5</a>
       [OPTIONNEL]</dt>
@@ -248,17 +195,15 @@ $ cd httpd-NN</pre>
       sont &eacute;crits en Perl).  Si le script <code class="program"><a href="./programs/configure.html">configure</a></code> ne trouve
       pas d'interpr&eacute;teur Perl 5, vous ne pourrez pas utiliser les scripts qui en
       ont besoin.  Bien entendu, vous pourrez tout de m&ecirc;me construire et
-      utiliser Apache httpd.</dd>
+      utiliser httpd.</dd>
 
     </dl>
 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif"></a></div>
 <div class="section">
 <h2 id="download">T&eacute;l&eacute;chargement <a title="Lien permanent" href="#download" class="permalink">&para;</a></h2>
 
-    <p>Si vous voulez construire httpd depuis le code source, commencez par
-    t&eacute;l&eacute;charger l&rsquo;archive tar du code source depuis le <a href="https://httpd.apache.org/download.cgi">site de t&eacute;l&eacute;chargement du
-    serveur HTTP Apache</a>. Le processus de construction (d&eacute;crit ci-apr&egrave;s)
-    permet de personnaliser le serveur pour qu&rsquo;il corresponde &agrave; vos besoins.</p>
+    <p>T&eacute;l&eacute;chargez l&rsquo;archive tar du code source depuis le <a href="https://httpd.apache.org/download.cgi">site de t&eacute;l&eacute;chargement du
+    serveur HTTP Apache</a>.</p>
 
     <p>Apr&egrave;s le t&eacute;l&eacute;chargement, il est important de v&eacute;rifier que vous disposez
     d'une version compl&egrave;te et non modifi&eacute;e du serveur HTTP Apache.  Vous pouvez
@@ -283,15 +228,13 @@ $ cd httpd-NN</pre>
 <h2 id="configure">Configuration de l'arborescence des sources <a title="Lien permanent" href="#configure" class="permalink">&para;</a></h2>
 
     <p>L'&eacute;tape suivante consiste &agrave; configurer l'arborescence des sources
-    d'Apache en fonction de votre plateforme et de vos besoins personnels.
-    Le script  <code class="program"><a href="./programs/configure.html">configure</a></code>, situ&eacute; &agrave; la racine du
-    r&eacute;pertoire de la distribution, a &eacute;t&eacute; con&ccedil;u &agrave; cet effet
-    (Les d&eacute;veloppeurs qui t&eacute;l&eacute;chargent
-    une version non officielle de l'arborescence des sources d'Apache
-    devront disposer de
-    <code>autoconf</code> et <code>libtool</code> et
-    ex&eacute;cuter <code>buildconf</code> avant de passer &agrave; l'&eacute;tape suivante,
-    ce qui n'est pas n&eacute;cessaire pour les versions officielles).</p>
+    de httpd en fonction de votre plateforme et de vos besoins personnels.
+    Le script  <code class="program"><a href="./programs/configure.html">configure</a></code>, situ&eacute; &agrave; la racine du r&eacute;pertoire de
+    la distribution, a &eacute;t&eacute; con&ccedil;u &agrave; cet effet (Les d&eacute;veloppeurs qui t&eacute;l&eacute;chargent
+    une version non officielle de l'arborescence des sources de httpd
+    devront disposer de <code>autoconf</code> et <code>libtool</code> et
+    ex&eacute;cuter <code>buildconf</code> avant de passer &agrave; l'&eacute;tape suivante, ce qui
+    n'est pas n&eacute;cessaire pour les versions officielles).</p>
 
     <p>Pour configurer l'arborescence des sources avec les valeurs par d&eacute;faut
     pour toutes les options, saisissez <code>./configure</code>.
@@ -299,29 +242,27 @@ $ cd httpd-NN</pre>
     accepte toute une vari&eacute;t&eacute; de variables et
     d'options de ligne de commande.</p>
 
-    <p>L'option la plus importante <code>--prefix</code> est le chemin
-    du r&eacute;pertoire d'installation d'Apache, car Apache doit &ecirc;tre configur&eacute;
-    en fonction de ce chemin pour pouvoir fonctionner correctement.
-    Il est possible de d&eacute;finir plus finement le chemin d'installation des fichiers
-    &agrave; l'aide d'<a href="programs/configure.html#installationdirectories">options
+    <p>L'option la plus importante <code>--prefix</code> est le chemin du
+    r&eacute;pertoire d'installation de httpd, car httpd doit &ecirc;tre
+    configur&eacute; en fonction de ce chemin pour pouvoir fonctionner correctement.
+    Il est possible de d&eacute;finir plus finement le chemin d'installation des
+    fichiers &agrave; l'aide d'<a href="programs/configure.html#installationdirectories">options
     suppl&eacute;mentaires de configure</a>.</p>
 
     <p>&Agrave; ce niveau, vous pouvez aussi sp&eacute;cifier de quelles <a href="programs/configure.html#optionalfeatures">fonctionnalit&eacute;s</a> vous
-    voulez disposer dans Apache en activant ou d&eacute;sactivant des <a href="mod/">modules</a>.  Apache est fourni avec un grand nombre de
-    modules inclus par d&eacute;faut. Ils seront compil&eacute;s en tant qu'<a href="dso.html">objets partag&eacute;s (DSOs)</a> qui pourront &ecirc;tre charg&eacute;s
-    ou d&eacute;charg&eacute;s &agrave; l'ex&eacute;cution. Vous pouvez aussi choisir de compiler
-    les modules statiquement via l'option
-    <code>--enable-<var>module</var>=static</code>.</p>
-    <p>Des modules suppl&eacute;mentaires peuvent &ecirc;tre activ&eacute;s &agrave; l'aide de l'option
-    <code>--enable-<var>module</var></code>, o&ugrave;
-    <var>module</var> est le nom du module sans la cha&icirc;ne
-    <code>mod_</code> et o&ugrave; tout caract&egrave;re de soulignement est converti
-    en tiret. D'une mani&egrave;re similaire,
-    vous pouvez d&eacute;sactiver des modules &agrave; l'aide de l'option
-    <code>--disable-<var>module</var></code>.  Faites tr&egrave;s attention
-    en utilisant ces options, car <code class="program"><a href="./programs/configure.html">configure</a></code> n'est pas en
-    mesure de vous avertir si le module que vous avez sp&eacute;cifi&eacute; n'existe pas&nbsp;;
-    il ignorera l'option.</p>
+    voulez disposer dans httpd en activant ou d&eacute;sactivant des <a href="mod/">modules</a>.  httpd est fourni avec un grand nombre de
+    modules inclus par d&eacute;faut. Ils seront compil&eacute;s en tant qu'<a href="dso.html">objets partag&eacute;s (DSOs)</a> qui pourront &ecirc;tre charg&eacute;s ou
+    d&eacute;charg&eacute;s &agrave; l'ex&eacute;cution. Vous pouvez aussi choisir de compiler les modules
+    statiquement via l'option
+    <code>--enable-<var>module</var>=static</code>.</p> <p>Des modules
+    suppl&eacute;mentaires peuvent &ecirc;tre activ&eacute;s &agrave; l'aide de l'option
+    <code>--enable-<var>module</var></code>, o&ugrave; <var>module</var> est le nom du
+    module sans la cha&icirc;ne <code>mod_</code> et o&ugrave; tout caract&egrave;re de soulignement
+    est converti en tiret. D'une mani&egrave;re similaire, vous pouvez d&eacute;sactiver des
+    modules &agrave; l'aide de l'option <code>--disable-<var>module</var></code>.
+    Faites tr&egrave;s attention en utilisant ces options, car
+    <code class="program"><a href="./programs/configure.html">configure</a></code> n'est pas en mesure de vous avertir si le
+    module que vous avez sp&eacute;cifi&eacute; n'existe pas&nbsp;; il ignorera l'option.</p>
 
     <p>En outre, vous devrez peut-&ecirc;tre fournir au script
     <code class="program"><a href="./programs/configure.html">configure</a></code> des informations suppl&eacute;mentaires sur
@@ -334,7 +275,7 @@ $ cd httpd-NN</pre>
     </p>
 
     <p>Pour vous faire une id&eacute;e des possibilit&eacute;s qui s'offrent &agrave; vous, voici
-    un exemple typique de compilation d'Apache avec le r&eacute;pertoire
+    un exemple typique de compilation de Apache httpd avec le r&eacute;pertoire
     d'installation <code>/sw/pkg/apache</code>, un compilateur et des drapeaux
     particuliers et les deux modules additionnels <code class="module"><a href="./mod/mod_ldap.html">mod_ldap</a></code>
     et <code class="module"><a href="./mod/mod_lua.html">mod_lua</a></code> :</p>
@@ -358,9 +299,10 @@ $ cd httpd-NN</pre>
 <h2 id="compile">Construction <a title="Lien permanent" href="#compile" class="permalink">&para;</a></h2>
 
     <p>Vous pouvez maintenant construire les diff&eacute;rents &eacute;l&eacute;ments qui
-    composent le paquet Apache en lan&ccedil;ant&nbsp;:</p>
+    composent le paquet Apache httpd en lan&ccedil;ant&nbsp;:</p>
 
-<div class="example"><p><code>$ make</code></p></div>
+<div class="example"><pre class="prettyprint lang-sh">$ make</pre>
+</div>
 
     <p>Vous devez &ecirc;tre patient, car il faut plusieurs minutes pour compiler
     une configuration de base, et cette dur&eacute;e peut varier consid&eacute;rablement
@@ -373,7 +315,8 @@ $ cd httpd-NN</pre>
     d'installation d&eacute;fini par <em>PREFIX</em> (voir plus haut l'option
     <code>--prefix</code>) en lan&ccedil;ant:</p>
 
-<div class="example"><p><code>$ make install</code></p></div>
+<div class="example"><pre class="prettyprint lang-sh">$ make install</pre>
+</div>
 
     <p>Cette &eacute;tape n&eacute;cessite habituellement les privil&egrave;ges
     de root, car <em>PREFIX</em> est en g&eacute;n&eacute;ral un
@@ -390,9 +333,10 @@ $ cd httpd-NN</pre>
     &eacute;ditant les <a href="configuring.html">fichiers de configuration</a>
     situ&eacute;s dans <code><em>PREFIX</em>/conf/</code>.</p>
 
-<div class="example"><p><code>$ vi <em>PREFIX</em>/conf/httpd.conf</code></p></div>
+<div class="example"><pre class="prettyprint lang-sh">$ vi <em>PREFIX</em>/conf/httpd.conf</pre>
+</div>
 
-    <p>Consultez le manuel d'Apache situ&eacute; dans
+    <p>Consultez le manuel de httpd situ&eacute; dans
     <code><em>PREFIX</em>/docs/manual/</code> ou
     <a href="https://httpd.apache.org/docs/2.4/">https://httpd.apache.org/docs/2.4/</a> pour la version la plus
     r&eacute;cente de ce manuel et la liste compl&egrave;te des <a href="mod/directives.html">directives de configuration</a> disponibles.</p>
@@ -401,9 +345,10 @@ $ cd httpd-NN</pre>
 <h2 id="test">Test <a title="Lien permanent" href="#test" class="permalink">&para;</a></h2>
 
     <p>Vous pouvez maintenant <a href="invoking.html">d&eacute;marrer</a> votre
-    serveur HTTP Apache en lan&ccedil;ant:</p>
+    Serveur HTTP Apache en lan&ccedil;ant&nbsp;:</p>
 
-<div class="example"><p><code>$ <em>PREFIX</em>/bin/apachectl -k start</code></p></div>
+<div class="example"><pre class="prettyprint lang-sh">$ <em>PREFIX</em>/bin/apachectl -k start</pre>
+</div>
 
     <p>Vous devriez alors pouvoir requ&eacute;rir votre premier document
     &agrave; l'aide de l'URL <code>http://localhost/</code>. La page web que vous
@@ -412,7 +357,8 @@ $ cd httpd-NN</pre>
     qui est g&eacute;n&eacute;ralement <code><em>PREFIX</em>/htdocs/</code>.
     Pour <a href="stopping.html">arr&ecirc;ter</a> le serveur, lancez:</p>
 
-<div class="example"><p><code>$ <em>PREFIX</em>/bin/apachectl -k stop</code></p></div>
+<div class="example"><pre class="prettyprint lang-sh">$ <em>PREFIX</em>/bin/apachectl -k stop</pre>
+</div>
 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif"></a></div>
 <div class="section">
 <h2 id="upgrading">Mise &agrave; jour <a title="Lien permanent" href="#upgrading" class="permalink">&para;</a></h2>
@@ -469,30 +415,56 @@ $ <em>PREFIX</em>/bin/apachectl -k start</pre>
     <code>config.nice</code> ; ils seront alors ajout&eacute;s aux options de
     votre script <code class="program"><a href="./programs/configure.html">configure</a></code> original :</p>
 
-     <div class="example"><p><code>
-     $ ./config.nice --prefix=/home/test/apache --with-port=90
-     </code></p></div>
+     <div class="example"><pre class="prettyprint lang-sh">$ ./config.nice --prefix=/home/test/apache --with-port=90</pre>
+</div>
 
     </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif"></a></div>
 <div class="section">
 <h2 id="thirdp">Paquets tiers <a title="Lien permanent" href="#thirdp" class="permalink">&para;</a></h2>
 
-    <p>De nombreux tiers fournissent leur propre distribution du serveur HTTP
-    Apache &agrave; installer sur une plate-forme particuli&egrave;re. On peut citer les
-    diff&eacute;rentes distributions Linux, divers paquets <a href="https://httpd.apache.org/docs/trunk/en/platform/windows.html">Windows</a>,
-    macOS, et de nombreux autres.</p>
-
-    <p>Notre license logicielle non seulement permet, mais aussi
-    encourage ce genre de redistribution. Cependant, ceci conduit &agrave; une
-    situation ou l'organisation de la configuration et les valeurs par
-    d&eacute;faut de votre installation du serveur peuvent ne pas correspondre
-    &agrave; ce qui est &eacute;crit dans la documentation. Bien que f&acirc;cheuse, cette
-    situation n'est pas appel&eacute;e &agrave; &eacute;voluer de sit&ocirc;t.</p>
-
-    <p>Une  <a href="https://cwiki.apache.org/confluence/display/httpd/DistrosDefaultLayout">description
-    de ces distributions tierces</a> est dans le wiki du serveur HTTP. Vous
-    devrez cependant vous familiariser par vous-m&ecirc;me avec la gestion du paquet
-    de votre plate-forme particuli&egrave;re et les proc&eacute;dures d'installation.</p>
+    <p>De nombreux syst&egrave;mes d&rsquo;exploitation fournissent des paquets Apache httpd
+    pr&eacute;construits. Ces paquets permettent de d&eacute;marrer rapidement, mais ils
+    diff&egrave;rent souvent d&rsquo;une construction &agrave; partir des sources quant &agrave;
+    l&rsquo;organisation du fichier de configuration, aux modules int&eacute;gr&eacute;s et aux
+    chemins par d&eacute;faut. La documentation sur ce site d&eacute;crit la construction du
+    serveur &agrave; partir des sources&nbsp;; si vous utilisez un paquet de plateforme,
+    consultez la documentation de votre distribution pour les d&eacute;tails
+    sp&eacute;cifiques &agrave; la plateforme.</p>
+
+    <p>Quelques exemples courants&nbsp;:</p>
+
+    <dl>
+    <dt>Fedora / CentOS / Red Hat Enterprise Linux</dt>
+    <dd>
+    <pre class="prettyprint lang-sh">sudo dnf install httpd
+sudo systemctl start httpd</pre>
+
+    <p>Voir <a href="https://docs.fedoraproject.org/en-US/quick-docs/getting-started-with-apache-http-server/index.html">la
+    documentation du projet Fedora</a> pour l&rsquo;organisation de la configuration
+    et des notes sp&eacute;cifiques &agrave; la plateforme.</p>
+    </dd>
+
+    <dt>Ubuntu / Debian</dt>
+    <dd>
+<pre class="prettyprint lang-sh">sudo apt install apache2
+sudo systemctl start apache2</pre>
+
+    <p>Voir <a href="https://ubuntu.com/tutorials/install-and-configure-apache">documentation
+    d&rsquo;Ubuntu</a> pour l&rsquo;organisation de la configuration
+    et des notes sp&eacute;cifiques &agrave; la plateforme.</p>
+    </dd>
+    </dl>
+
+    <p>Notre licence logicielle non seulement permet, mais aussi encourage ce
+    genre de distribution tierce. Cependant, cela conduit &agrave; une situation ou
+    l'organisation de la configuration et les valeurs par d&eacute;faut de votre
+    installation du serveur peuvent ne pas correspondre &agrave; ce qui est &eacute;crit dans
+    la documentation. Une <a href="https://cwiki.apache.org/confluence/display/httpd/DistrosDefaultLayout">description
+    de ces distributions tierces</a> est disponible dans le wiki du serveur
+    HTTP.</p>
+
+    <div class="warning">Votre plateforme favorite n&rsquo;est pas mentionn&eacute;e ici&nbsp;? <a href="https://httpd.apache.org/docs-project/">Voil&agrave; une bonne occasion pour
+    vous d&rsquo;am&eacute;liorer cette documentation.</a></div>
 
 </div></div>
 <div class="bottomlang">
index 98b62cf1a1efee71e6e34562e0fcf7c7af28701c..210aeb4ac5ab60ebe0854c22dce7a68071da1ba9 100644 (file)
@@ -10,7 +10,7 @@
     <variant outdated="yes">de</variant>
     <variant>en</variant>
     <variant outdated="yes">es</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
     <variant outdated="yes">ja</variant>
     <variant outdated="yes">ko</variant>
     <variant outdated="yes">pt-br</variant>
index 043569622ab8c1c5b4c8a5862fbdf114f3bed490..f0bafe656dfc5f836f53eaa1c513f4f4db095308 100644 (file)
     suivante consiste &agrave; analyser ces informations de fa&ccedil;on &agrave; pouvoir en
     extraire des statistiques utiles. L'analyse de journaux en g&eacute;n&eacute;ral est en
     dehors du sujet de ce document et ne fait pas vraiment partie int&eacute;grante
-    du travail du serveur web lui-m&ecirc;me.</p>
+    du travail du serveur web lui-m&ecirc;me.
+    </p>
 
     <p>Diff&eacute;rentes versions du d&eacute;mon Apache httpd utilisaient d'autres modules
     et directives pour contr&ocirc;ler la journalisation des acc&egrave;s, &agrave; l'instar de
       <p>Voici une configuration typique pour le journal des acc&egrave;s :</p>
 
       <pre class="prettyprint lang-config">LogFormat "%h %l %u %t \"%r\" %&gt;s %b" common
-CustomLog logs/access_log common</pre>
+CustomLog "logs/access_log" common</pre>
 
 
       <p>Ici est d&eacute;finie l'<em>identit&eacute;</em> <code>common</code> qui est
@@ -357,13 +358,14 @@ CustomLog logs/access_log common</pre>
 
         <dt><code>200</code> (<code>%&gt;s</code>)</dt>
 
-       <dd>C'est le code de statut que le serveur retourne au client. Cette
+        <dd>C'est le code de statut que le serveur retourne au client. Cette
        information est tr&egrave;s importante car elle indique si la requ&ecirc;te a fait
-       l'objet d'une r&eacute;ponse positive (codes commen&ccedil;ant par 2), une redirection
-       (codes commen&ccedil;ant par 3), une erreur due au client (codes commen&ccedil;ant par
-       4), ou une erreur due au serveur (codes commen&ccedil;ant par 5). Vous
-       trouverez la liste compl&egrave;te des codes de statut possibles dans la
-       sp&eacute;cification HTTP (<a href="https://www.rfc-editor.org/rfc/rfc2616">RFC 2616</a>) (RFC2616 section 10).</dd>
+       l'objet d'une r&eacute;ponse positive (codes commen&ccedil;ant par 2), une
+       redirection (codes commen&ccedil;ant par 3), une erreur due au client (codes
+       commen&ccedil;ant par 4), ou une erreur due au serveur (codes commen&ccedil;ant
+       par 5). Vous trouverez la liste compl&egrave;te des codes de statut possibles
+       dans la sp&eacute;cification
+       HTTP (<a href="https://www.rfc-editor.org/rfc/rfc2616">RFC 2616</a>) (RFC2616 section 10).</dd>
 
         <dt><code>2326</code> (<code>%b</code>)</dt>
 
@@ -383,7 +385,7 @@ CustomLog logs/access_log common</pre>
       comme suit :</p>
 
       <pre class="prettyprint lang-config">LogFormat "%h %l %u %t \"%r\" %&gt;s %b \"%{Referer}i\" \"%{User-agent}i\"" combined
-CustomLog log/access_log combined</pre>
+CustomLog "log/access_log" combined</pre>
 
 
       <p>Ce format est identique au Common Log Format, avec deux champs
@@ -434,9 +436,9 @@ CustomLog log/access_log combined</pre>
       <code>AgentLog</code>.</p>
 
       <pre class="prettyprint lang-config">LogFormat "%h %l %u %t \"%r\" %&gt;s %b" common
-CustomLog logs/access_log common
-CustomLog logs/referer_log "%{Referer}i -&gt; %U"
-CustomLog logs/agent_log "%{User-agent}i"</pre>
+CustomLog "logs/access_log" common
+CustomLog "logs/referer_log" "%{Referer}i -&gt; %U"
+CustomLog "logs/agent_log" "%{User-agent}i"</pre>
 
 
       <p>Cet exemple montre aussi qu'il n'est pas obligatoire d'associer
@@ -467,7 +469,7 @@ SetEnvIf Remote_Addr "127\.0\.0\.1" dontlog
 # Marque les requ&ecirc;tes pour le fichier robots.txt
 SetEnvIf Request_URI "^/robots\.txt$" dontlog
 # Journalise toutes les autres requ&ecirc;tes
-CustomLog logs/access_log common env=!dontlog</pre>
+CustomLog "logs/access_log" common env=!dontlog</pre>
 
 
       <p>Autre exemple, imaginons l'enregistrement des requ&ecirc;tes en provenance
@@ -475,8 +477,8 @@ CustomLog logs/access_log common env=!dontlog</pre>
       utilisateurs dans un autre journal.</p>
 
       <pre class="prettyprint lang-config">        SetEnvIf Accept-Language "en" english
-        CustomLog logs/english_log common env=english
-        CustomLog logs/non_english_log common env=!english</pre>
+        CustomLog "logs/english_log" common env=english
+        CustomLog "logs/non_english_log" common env=!english</pre>
 
 
        <p>Dans le contexte d'une mise en cache, il peut &ecirc;tre
@@ -485,7 +487,7 @@ CustomLog logs/access_log common env=!dontlog</pre>
 
       <pre class="prettyprint lang-config">SetEnv CACHE_MISS 1
 LogFormat "%h %l %u %t "%r " %&gt;s %b %{CACHE_MISS}e" common-cache
-CustomLog logs/access_log common-cache</pre>
+CustomLog "logs/access_log" common-cache</pre>
 
 
       <p><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> va s'ex&eacute;cuter avant
@@ -523,106 +525,105 @@ LogFormat "%!200,304,302{Referer}i" refererlog</pre>
 <h2 id="rotation">Rotation des journaux <a title="Lien permanent" href="#rotation" class="permalink">&para;</a></h2>
     
 
-    <p>M&ecirc;me dans le cas d'un serveur mod&eacute;r&eacute;ment sollicit&eacute;, la quantit&eacute;
-    d'informations stock&eacute;es dans les fichiers journaux est tr&egrave;s importante.
-    Le fichier journal des acc&egrave;s grossit en g&eacute;n&eacute;ral d'1 Mo ou plus toutes
-    les 10000 requ&ecirc;tes. Il est par cons&eacute;quent n&eacute;cessaire d'effectuer
-    p&eacute;riodiquement la rotation des journaux en d&eacute;pla&ccedil;ant ou supprimant les
-    fichiers correspondants. On ne peut pas le faire pendant que le serveur
-    est en cours d'ex&eacute;cution, car Apache httpd va continuer &agrave; &eacute;crire dans l'ancien
-    fichier journal aussi longtemps qu'il le maintiendra ouvert.
-    C'est pourquoi le serveur doit &ecirc;tre
-    <a href="stopping.html">red&eacute;marr&eacute;</a> apr&egrave;s le d&eacute;placement ou la
-    suppression des fichiers journaux de fa&ccedil;on &agrave; ce qu'il en ouvre
-    de nouveaux.</p>
-
-    <p>Avec un red&eacute;marrage <em>graceful</em>, on peut faire en sorte que le
-    serveur ouvre de nouveaux fichiers journaux sans perdre de connexions
-    existantes ou en cours avec les clients. Cependant, pour que ceci soit
-    possible, le serveur doit continuer &agrave; &eacute;crire dans les anciens fichiers
-    journaux pendant qu'il termine le traitement des requ&ecirc;tes en cours.
-    Il est donc n&eacute;cessaire d'attendre un certain temps apr&egrave;s le r&eacute;d&eacute;marrage
-    avant d'effectuer tout traitement sur les fichiers journaux. Voici un
-    sc&eacute;nario typique dans lequel on effectue une simple rotation des
-    journaux en compressant les anciens fichiers correspondants afin
-    de gagner de l'espace disque :</p>
+    <p>M&ecirc;me sur un serveur mod&eacute;r&eacute;ment sollicit&eacute;, les fichiers journaux
+    grossissent rapidement &mdash;&nbsp;le journal des acc&egrave;s cro&icirc;t &agrave; peu pr&egrave;s de 1 Mo ou
+    plus toutes les 10000 requ&ecirc;tes. Sans rotation, les journaux consomment de
+    plus en plus d&rsquo;espace disque et deviennent difficiles &agrave; analyser. Il est
+    donc recommand&eacute; de configurer une rotation automatique des journaux d&egrave;s le
+    d&eacute;part.</p>
 
-    <div class="example"><p><code>
-      mv access_log access_log.old<br>
-      mv error_log error_log.old<br>
-      apachectl graceful<br>
-      sleep 600<br>
-      gzip access_log.old error_log.old
-    </code></p></div>
+    <h3 id="rotation-rotatelogs">Utilisation de rotatelogs (recommand&eacute;)</h3>
+      
+
+      <p>L&rsquo;approche la plus simple consiste &agrave; utiliser le programme
+      <code class="program"><a href="./programs/rotatelogs.html">rotatelogs</a></code> int&eacute;gr&eacute; &agrave; httpd en utilisant la <a href="#piped">redirection des journaux</a>. Ce programme permet une
+      rotation des journaux sans avoir &agrave; red&eacute;marrer le serveur et sans outil
+      externe. Pour une rotation des journaux toutes les 24&nbsp;heures&nbsp;:</p>
+
+<div class="example"><pre class="prettyprint lang-config">CustomLog "|/usr/local/apache/bin/rotatelogs /var/log/httpd/access_log 86400" combined
+ErrorLog  "|/usr/local/apache/bin/rotatelogs /var/log/httpd/error_log 86400"</pre>
+</div>
+
+      <p>Pour une rotation lorsque la taille du journal atteint une certaine
+      valeur (par exemple 100 Mo)&nbsp;:</p>
+
+<div class="example"><pre class="prettyprint lang-config">CustomLog "|/usr/local/apache/bin/rotatelogs /var/log/httpd/access_log 100M" combined</pre>
+</div>
+
+      <p>Vous pouvez aussi utiliser un motif de nom de fichier avec horodatage
+      sous forme d&rsquo;une cha&icirc;ne au format <code>strftime</code>&nbsp;:</p>
+
+<div class="example"><pre class="prettyprint lang-config">CustomLog "|/usr/local/apache/bin/rotatelogs /var/log/httpd/access_log.%Y-%m-%d 86400" combined</pre>
+</div>
+
+    <p>Voir <code class="program"><a href="./programs/rotatelogs.html">rotatelogs</a></code> pour une description compl&egrave;te de ses
+    options, en particulier les temps de d&eacute;calage, les limitations de nombre de
+    fichiers et la compression.</p>
+    
+
+    <h3 id="rotation-logrotate">Utilisation de logrotate ou de la gestion des journaux par le
+      syst&egrave;me</h3>
+      
 
-    <p>La section suivante pr&eacute;sente une autre m&eacute;thode de rotation des journaux
-    qui consiste &agrave; utiliser les
-    <a href="#piped">journaux redirig&eacute;s</a>.</p>
+      <p>La plupart des distributions de Linux fournissent le programme
+      <code>logrotate</code> qui effectue une rotation, une compression et une
+      expiration des fichiers journaux selon une planification. Si votre
+      distribution comporte d&eacute;j&agrave; une configuration de logrotate pour httpd
+      (examinez <code>/etc/logrotate.d/</code>), elle g&egrave;re peut-&ecirc;tre d&eacute;j&agrave; la
+      rotation pour vous.</p>
+
+      <p>Lorsqu&rsquo;on utilise un outil de rotation externe comme
+      <code>logrotate</code>, il faut faire en sorte que httpd r&eacute;ouvre ses
+      fichiers journaux quand les anciens ont &eacute;t&eacute; mis de c&ocirc;t&eacute;. Pour ce faire,
+      l&rsquo;approche standard est un red&eacute;marrage <em>graceful</em>&nbsp;:</p>
+
+<div class="example"><pre class="prettyprint lang-sh">/usr/sbin/apachectl graceful</pre>
+</div>
+
+      <p>Votre script <code>postrotate</code> dans la configuration de logrotate
+      doit contenir cette derni&egrave;re commande (ou la commande &eacute;quivalente
+      <code>systemctl reload</code>). Comme httpd continue d&rsquo;&eacute;crire dans
+      l&rsquo;ancien fichier jusqu&rsquo;&agrave; ce qu&rsquo;il re&ccedil;oive le signal, tout post-traitement
+      des fichiers ayant subi une rotation doit pr&eacute;voir un bref d&eacute;lai.</p>
+
+       
   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif"></a></div>
 <div class="section">
 <h2 id="piped">Journaux redirig&eacute;s <a title="Lien permanent" href="#piped" class="permalink">&para;</a></h2>
     
 
-    <p>Nous avons vu que le d&eacute;mon httpd &eacute;crivait les informations de
-    journalisation des erreurs et des acc&egrave;s dans un fichier journal ;
-    il peut aussi
-    rediriger ces informations vers un autre processus par l'interm&eacute;diaire d'un
-    tube de communication (pipe). Cette fonctionnalit&eacute; am&eacute;liore
-    consid&eacute;rablement la souplesse de la journalisation, sans ajouter de code
-    au serveur principal. Pour rediriger les informations de journalisation
-    vers un tube de communication, remplacez simplement le nom de fichier
-    journal par
-    le caract&egrave;re pipe "<code>|</code>", suivi du nom de l'ex&eacute;cutable qui va
-    recueillir les entr&eacute;es de journal sur son entr&eacute;e
-    standard. Le serveur va
-    lancer le processus de redirection des journaux au moment du d&eacute;marrage du
-    serveur, et le relancera s'il cesse de fonctionner
-    pendant l'ex&eacute;cution du serveur.
-    (Nous d&eacute;nommons cette technique "journalisation
-    redirig&eacute;e fiable" gr&acirc;ce &agrave; cette derni&egrave;re fonctionnalit&eacute;.)</p>
-
-    <p>Les processus de journalisation redirig&eacute;e sont lanc&eacute;s par le processus
-    httpd parent, et h&eacute;ritent de l'UID de ce dernier. Cela signifie que les
-    programmes de journalisation dirig&eacute;e s'ex&eacute;cutent g&eacute;n&eacute;ralement en tant que
-    root. Il est donc tr&egrave;s important que ces programmes soient simples et
-    s&eacute;curis&eacute;s.</p>
-
-    <p>Un des grands avantages de la journalisation redirig&eacute;e est la possibilit&eacute;
-    d'effectuer la rotation des journaux sans avoir &agrave; red&eacute;marrer le serveur. Pour
-    accomplir cette t&acirc;che, le serveur HTTP Apache fournit un programme simple
-    appel&eacute; <code class="program"><a href="./programs/rotatelogs.html">rotatelogs</a></code>. Par exemple, pour une rotation des
-    journaux toutes les 24 heures, ajoutez ces lignes :</p>
-
-    <pre class="prettyprint lang-config">CustomLog "|/usr/local/apache/bin/rotatelogs /var/log/access_log 86400" common</pre>
-
-
-    <p>Notez que l'ensemble de la commande qui sera appel&eacute;e par le tube de
-    communication a &eacute;t&eacute; plac&eacute;e entre guillemets. Bien que cet exemple
-    concerne le journal des acc&egrave;s, la m&ecirc;me technique peut &ecirc;tre utilis&eacute;e
-    pour le journal des erreurs.</p>
-
-    <p>Comme la journalisation conditionnelle, la journalisation redirig&eacute;e est
-    un outil tr&egrave;s puissant, mais si elle existe, il est pr&eacute;f&eacute;rable d'utiliser
-    une solution plus simple comme le traitement &agrave; posteriori hors ligne.</p>
-
-
-  <p>Par d&eacute;faut, le processus de redirection du journal est lanc&eacute; sans
-  invoquer un shell. Pour invoquer un shell, utilisez "<code>|$</code>"
-  au lieu de "<code>|</code>" (en g&eacute;n&eacute;ral avec <code>/bin/sh -c</code>)
-  :</p>
-
-    <pre class="prettyprint lang-config"># Invocation de "rotatelogs" en utilisant un shell
-CustomLog "|$/usr/local/apache/bin/rotatelogs   /var/log/access_log 86400" common</pre>
-
-
-
-    <p>Il s'agissait du comportement par d&eacute;faut sous Apache 2.2. Selon
-    les sp&eacute;cificit&eacute;s du shell, ceci peut g&eacute;n&eacute;rer un processus shell
-    suppl&eacute;mentaire pour toute la dur&eacute;e du programme de redirection du
-    journal, et induire des probl&egrave;mes de gestion de signaux au cours du
-    red&eacute;marrage. La notation "<code>||</code>" est aussi support&eacute;e pour
-    des raisons de compatibilit&eacute; avec Apache 2.2 et est &eacute;quivalente &agrave;
-    "<code>|</code>".</p>
+    <p>httpd peut &eacute;crire dans les fichiers journaux des erreurs et des acc&egrave;s &agrave;
+    travers un tube (pipe) vers un autre processus, plut&ocirc;t que d&rsquo;&eacute;crire
+    directement dans un fichier. Pour mettre en Å“uvre cette redirection,
+    remplacez le nom du fichier par le caract&egrave;re pipe "<code>|</code>", suivi de
+    la commande qui recevra les entr&eacute;es du journal sur son entr&eacute;e standard&nbsp;:</p>
+
+<div class="example"><pre class="prettyprint lang-config">CustomLog "|/usr/local/apache/bin/rotatelogs /var/log/httpd/access_log 86400" combined</pre>
+</div>
+
+    <p>httpd d&eacute;marre le processus de redirection des journaux au d&eacute;marrage du
+    serveur et le red&eacute;marre automatiquement s&rsquo;il se plante (ce comportement est
+    parfois nomm&eacute; &laquo;&nbsp;journalisation redirig&eacute;e fiable&nbsp;&raquo;). L&rsquo;ensemble de la
+    commande &agrave; partir du caract&egrave;re pipe doit &ecirc;tre entour&eacute;e de guillemets &mdash;&nbsp;cette
+    syntaxe fonctionne pour les deux directives <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> et <code class="directive"><a href="./mod/core.html#errorlog">ErrorLog</a></code>.</p>
+
+    <p>Les processus de redirection des journaux sont lanc&eacute;s par le processus
+    httpd parent et h&eacute;ritent de son identifiant utilisateur. Cela signifie en
+    g&eacute;n&eacute;ral qu&rsquo;ils s&rsquo;ex&eacute;cutent en tant que root&nbsp;; faites donc en sorte que les
+    programmes de redirection des journaux restent simples et s&eacute;curis&eacute;s.</p>
+
+    <p>Par d&eacute;faut, le processus de redirection des journaux est lanc&eacute;
+    directement, sans passer par un shell. Vous pouvez utiliser
+    "<code>|$</code>" &agrave; la place de "<code>|</code>" pour effectuer ce lancement
+    via un shell (en g&eacute;n&eacute;ral <code>/bin/sh -c</code>)&nbsp;:</p>
+
+<div class="example"><pre class="prettyprint lang-config">CustomLog "|$/usr/local/apache/bin/rotatelogs /var/log/httpd/access_log 86400" combined</pre>
+</div>
+
+    <p>La variante avec shell est parfois requise si votre commande redirig&eacute;e
+    utilise des fonctionnalit&eacute;s du shell comme les caract&egrave;res g&eacute;n&eacute;riques ou le
+    d&eacute;veloppement de variable. Dans la plupart des cas, il est pr&eacute;f&eacute;rable
+    d&rsquo;utiliser l&rsquo;invocation directe (sans passer par un shell).</p>
 
     <div class="note"><h3>Note &agrave; propos de la plateforme Windows</h3>
     <p>Notez que sous Windows, la m&eacute;moire allou&eacute;e au bureau (desktop
@@ -671,7 +672,7 @@ CustomLog "|$/usr/local/apache/bin/rotatelogs   /var/log/access_log 86400" commo
     individuels. Consid&eacute;rons par exemple les directives suivantes :</p>
 
     <pre class="prettyprint lang-config">LogFormat "%v %p %h %l %u %t \"%r\" %&gt;s %b" commonvhost
-CustomLog logs/access_log commonvhost</pre>
+CustomLog "logs/access_log" commonvhost</pre>
 
 
     <p>Le champ <code>%v</code> sert &agrave; enregistrer le nom de l'h&ocirc;te virtuel qui
@@ -682,7 +683,7 @@ CustomLog logs/access_log commonvhost</pre>
 <h2 id="other">Autres fichiers journaux <a title="Lien permanent" href="#other" class="permalink">&para;</a></h2>
     
 
-    <table class="related"><tr><th>Modules Apparent&eacute;s</th><th>Directives Apparent&eacute;es</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_logio.html">mod_logio</a></code></li><li><code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code></li><li><code class="module"><a href="./mod/mod_log_forensic.html">mod_log_forensic</a></code></li><li><code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code></li><li><code class="directive"><a href="./mod/mod_log_config.html#bufferedlogs">BufferedLogs</a></code></li><li><code class="directive"><a href="./mod/mod_log_forensic.html#forensiclog">ForensicLog</a></code></li><li><code class="directive"><a href="./mod/mpm_common.html#pidfile">PidFile</a></code></li><li><code class="directive"><a href="./mod/mod_cgi.html#scriptlog">ScriptLog</a></code></li><li><code class="directive"><a href="./mod/mod_cgi.html#scriptlogbuffer">ScriptLogBuffer</a></code></li><li><code class="directive"><a href="./mod/mod_cgi.html#scriptloglength">ScriptLogLength</a></code></li></ul></td></tr></table>
+    <table class="related"><tr><th>Modules Apparent&eacute;s</th><th>Directives Apparent&eacute;es</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_logio.html">mod_logio</a></code></li><li><code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code></li><li><code class="module"><a href="./mod/mod_log_debug.html">mod_log_debug</a></code></li><li><code class="module"><a href="./mod/mod_log_forensic.html">mod_log_forensic</a></code></li><li><code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_log_config.html#bufferedlogs">BufferedLogs</a></code></li><li><code class="directive"><a href="./mod/mod_log_forensic.html#forensiclog">ForensicLog</a></code></li><li><code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code></li><li><code class="directive"><a href="./mod/mod_log_debug.html#logmessage">LogMessage</a></code></li><li><code class="directive"><a href="./mod/mpm_common.html#pidfile">PidFile</a></code></li><li><code class="directive"><a href="./mod/mod_cgi.html#scriptlog">ScriptLog</a></code></li><li><code class="directive"><a href="./mod/mod_cgi.html#scriptlogbuffer">ScriptLogBuffer</a></code></li><li><code class="directive"><a href="./mod/mod_cgi.html#scriptloglength">ScriptLogLength</a></code></li></ul></td></tr></table>
 
     <h3>Enregistrement du nombre r&eacute;el d'octets envoy&eacute;s et re&ccedil;us</h3>
       
@@ -727,6 +728,15 @@ CustomLog logs/access_log commonvhost</pre>
       serveur en production. Vous trouverez plus d'informations dans la
       documentation du module <a href="mod/mod_cgi.html">mod_cgi</a>.</p>
     
+
+    <h3 id="debug">Journalisation de d&eacute;bogage configurable</h3>
+        
+
+        <p>La directive <code class="directive"><a href="./mod/mod_log_debug.html#logmessage">LogMessage</a></code>
+       vous permet de cr&eacute;er vos propres messages de journalisation
+       personnalis&eacute;s pour faciliter vos op&eacute;rations de d&eacute;bogage.
+        </p>
+    
     
   </div></div>
 <div class="bottomlang">
index 5b7d0530fc4b885fbb76e5abaa49b3b2cc1ad336..58cc8b2f78ca133863d13c56056b11f747064c4f 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
 <?xml-stylesheet type="text/xsl" href="./style/manual.ja.xsl"?>
-<!-- English Revision: 659902:1933507 (outdated) -->
+<!-- English Revision: 659902:1935554 (outdated) -->
 
 <!--
  Licensed to the Apache Software Foundation (ASF) under one or more
index ddddafde85eac21896d62adc7ef70643bd81a317..cb1b882e1dae2dabe9f9166e3fda3ba3342ac166 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="EUC-KR" ?>
 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
 <?xml-stylesheet type="text/xsl" href="./style/manual.ko.xsl"?>
-<!-- English Revision: 105989:1933507 (outdated) -->
+<!-- English Revision: 105989:1935554 (outdated) -->
 
 <!--
  Licensed to the Apache Software Foundation (ASF) under one or more
index 440a73bbc5fccab49e998b776bd2a00968a03a0b..0e0558646b9e8f5d0cefd41003fe1cc86c2e4d9a 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
 <?xml-stylesheet type="text/xsl" href="./style/manual.tr.xsl"?>
-<!-- English Revision: 1897299:1933507 (outdated) -->
+<!-- English Revision: 1897299:1935554 (outdated) -->
 <!-- =====================================================
  Translated by: Nilgün Belma Bugüner <nilgun belgeler.gen.tr>
    Reviewed by: Orhan Berent <berent belgeler.gen.tr>
index 9f40db3b04d2a6b75ab680f7ea6d957e291dbbb7..5abfe5b6dd3848d3a69e7e6492d5e75985dc05aa 100644 (file)
@@ -29,8 +29,6 @@
 <p><span>Langues Disponibles: </span><a href="../en/mod/event.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
 <a href="../fr/mod/event.html" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a></p>
 </div>
-<div class="outofdate">Cette traduction peut &ecirc;tre p&eacute;rim&eacute;e. V&eacute;rifiez la version
-            anglaise pour les changements r&eacute;cents.</div>
 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Une variante du MPM <code class="module"><a href="../mod/worker.html">worker</a></code> con&ccedil;ue pour ne
 mobiliser des threads que pour les connexions en cours de traitement</td></tr>
 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
@@ -49,6 +47,12 @@ mobiliser des threads que pour les connexions en cours de traitement</td></tr>
     <code class="program"><a href="../programs/configure.html">configure</a></code> lorsque vous compilez le programme
     <code class="program"><a href="../programs/httpd.html">httpd</a></code>.</p>
 
+    <p>Lorsque ce module est construit en tant que module DSO, il peut &ecirc;tre
+charg&eacute; &agrave; l&rsquo;aide de la commande&nbsp;:</p>
+
+    <pre class="prettyprint lang-config">LoadModule mpm_event_module modules/mod_mpm_event.so</pre>
+
+
 </div>
 <div id="quickview"><h3>Sujets</h3>
 <ul id="topics">
@@ -80,6 +84,7 @@ mobiliser des threads que pour les connexions en cours de traitement</td></tr>
 </ul>
 <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mpm_event">Probl&egrave;mes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mpm_event">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
 <ul class="seealso">
+<li><a href="../mpm.html">Modules multi-processus (MPMs)</a></li>
 <li><a href="worker.html">Le MPM worker</a></li>
 </ul></div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
index 58ce5cc07348893d2e89c5fca873b9f46374756e..7b7fc287cfe378466fec409610a1806ae8480e4e 100644 (file)
@@ -8,6 +8,6 @@
 
   <variants>
     <variant>en</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
   </variants>
 </metafile>
index 4ce487d5d0092676b86f9bb02329a15c67950c1b..0f5965fa977aed43a5d4a6328e5e2e861021e3d1 100644 (file)
@@ -29,8 +29,6 @@
 <p><span>Langues Disponibles: </span><a href="../en/mod/mpm_netware.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
 <a href="../fr/mod/mpm_netware.html" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a></p>
 </div>
-<div class="outofdate">Cette traduction peut &ecirc;tre p&eacute;rim&eacute;e. V&eacute;rifiez la version
-            anglaise pour les changements r&eacute;cents.</div>
 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Module multi-processus impl&eacute;mentant un serveur web bas&eacute;
 exclusivement sur les threads et optimis&eacute; pour Novell
 NetWare</td></tr>
@@ -85,6 +83,7 @@ NetWare</td></tr>
 </ul>
 <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mpm_netware">Probl&egrave;mes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mpm_netware">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
 <ul class="seealso">
+<li><a href="../mpm.html">Modules multi-processus (MPMs)</a></li>
 <li><a href="../bind.html">D&eacute;finition des adresses et ports
 qu'utilise Apache httpd</a>
 </li>
index d85c7cf8f52f7b78fb53d9e924985b29e784ceb3..9b8f967461a53f2c5c7d353b8d4e257ad5b2e876 100644 (file)
@@ -8,6 +8,6 @@
 
   <variants>
     <variant>en</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
   </variants>
 </metafile>
index e9789dfe52b025ecca5317cfb49fde4b54727db4..5713756f1257c08d40b4c63d1883710968419d1c 100644 (file)
@@ -31,8 +31,6 @@
 <a href="../fr/mod/mpm_winnt.html" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a> |
 <a href="../ja/mod/mpm_winnt.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a></p>
 </div>
-<div class="outofdate">Cette traduction peut &ecirc;tre p&eacute;rim&eacute;e. V&eacute;rifiez la version
-            anglaise pour les changements r&eacute;cents.</div>
 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Module multi-processus optimis&eacute; pour Windows
 NT.</td></tr>
 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
@@ -128,6 +126,7 @@ AcceptFilter https none</pre>
 </ul>
 <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mpm_winnt">Probl&egrave;mes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mpm_winnt">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
 <ul class="seealso">
+<li><a href="../mpm.html">Modules multi-processus (MPMs)</a></li>
 <li><a href="../platform/windows.html">Utiliser le serveur HTTP
 Apache sous Microsoft Windows</a></li>
 </ul></div>
index 52a9d42ab04526c80ee0ffe331604ca8e0e3670d..5394adc89893afc2f3f0324148ef50aec575d418 100644 (file)
@@ -9,7 +9,7 @@
   <variants>
     <variant outdated="yes">de</variant>
     <variant>en</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
     <variant outdated="yes">ja</variant>
   </variants>
 </metafile>
index 8e0a84a1773a12e9805af31afdb0465a1e1c41f0..24f848a4451754ac1baeee4ee160fde325545b6e 100644 (file)
@@ -29,8 +29,6 @@
 <p><span>Langues Disponibles: </span><a href="../en/mod/mpmt_os2.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
 <a href="../fr/mod/mpmt_os2.html" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a></p>
 </div>
-<div class="outofdate">Cette traduction peut &ecirc;tre p&eacute;rim&eacute;e. V&eacute;rifiez la version
-            anglaise pour les changements r&eacute;cents.</div>
 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>MPM hybride multi-processus, multi-thread pour
 OS/2</td></tr>
 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
@@ -69,6 +67,7 @@ OS/2</td></tr>
 </ul>
 <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mpmt_os2">Probl&egrave;mes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mpmt_os2">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
 <ul class="seealso">
+<li><a href="../mpm.html">Modules multi-processus (MPMs)</a></li>
 <li><a href="../bind.html">D&eacute;finition des adresses et ports
 qu'utilise Apache</a></li>
 </ul></div>
index 1d5e9bf000d70c817d37cf4683aff4e8c6782f82..f380b827f621e519f7d2455aeabf80b4a4fbc7d0 100644 (file)
@@ -8,6 +8,6 @@
 
   <variants>
     <variant>en</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
   </variants>
 </metafile>
index e64ad4e1314fa7ce2e7bfa5a5f5e816fb22247ce..040f28b5cc5e58fa33ba5a98fe0001540734dba8 100644 (file)
@@ -32,8 +32,6 @@
 <a href="../ja/mod/prefork.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
 <a href="../tr/mod/prefork.html" hreflang="tr" rel="alternate" title="T&uuml;rk&ccedil;e">&nbsp;tr&nbsp;</a></p>
 </div>
-<div class="outofdate">Cette traduction peut &ecirc;tre p&eacute;rim&eacute;e. V&eacute;rifiez la version
-            anglaise pour les changements r&eacute;cents.</div>
 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Impl&eacute;mente un serveur web avec d&eacute;marrage anticip&eacute; de
 processus, sans thread</td></tr>
 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
@@ -57,6 +55,13 @@ processus, sans thread</td></tr>
     assez grande pour pouvoir traiter autant de requ&ecirc;tes simultan&eacute;es que
     vous pensez recevoir, mais assez petite pour conserver suffisamment
     de m&eacute;moire RAM pour tous les processus.</p>
+
+    <p>Lorsqu&rsquo;il est construit en tant que module DSO, ce module peut &ecirc;tre
+    charg&eacute; avec la commande&nbsp;:</p>
+
+    <pre class="prettyprint lang-config">LoadModule mpm_prefork_module modules/mod_mpm_prefork.so</pre>
+
+
 </div>
 <div id="quickview"><h3>Sujets</h3>
 <ul id="topics">
@@ -83,6 +88,7 @@ processus, sans thread</td></tr>
 </ul>
 <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mpm_prefork">Probl&egrave;mes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mpm_prefork">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
 <ul class="seealso">
+<li><a href="../mpm.html">Modules multi-processus(MPMs)</a></li>
 <li><a href="../bind.html">D&eacute;finition des adresses et ports
 qu'utilise le serveur HTTP Apache</a></li>
 </ul></div>
index fe2176908d90a9e684678b53c169fc6c63c0d5d4..dee137dc4115001d885d6fcdb8bdb6ff9239ebf0 100644 (file)
@@ -9,7 +9,7 @@
   <variants>
     <variant outdated="yes">de</variant>
     <variant>en</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
     <variant outdated="yes">ja</variant>
     <variant outdated="yes">tr</variant>
   </variants>
index 7c33e086755b61be434fb1da535df1b3b9e32039..631d30e628037d27ff80993d3b34c147ddcf9247 100644 (file)
@@ -32,8 +32,6 @@
 <a href="../ja/mod/worker.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
 <a href="../tr/mod/worker.html" hreflang="tr" rel="alternate" title="T&uuml;rk&ccedil;e">&nbsp;tr&nbsp;</a></p>
 </div>
-<div class="outofdate">Cette traduction peut &ecirc;tre p&eacute;rim&eacute;e. V&eacute;rifiez la version
-            anglaise pour les changements r&eacute;cents.</div>
 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Module multi-processus impl&eacute;mentant un serveur web hybride
 multi-processus multi-thread</td></tr>
 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
@@ -53,6 +51,13 @@ multi-processus multi-thread</td></tr>
     ce MPM sont <code class="directive"><a href="../mod/mpm_common.html#threadsperchild">ThreadsPerChild</a></code>, qui d&eacute;finit le
     nombre de threads lanc&eacute;s par chaque processus enfant et <code class="directive"><a href="../mod/mpm_common.html#maxrequestworkers">MaxRequestWorkers</a></code>, qui d&eacute;finit le nombre
     global maximum de threads qui peuvent &ecirc;tre lanc&eacute;s.</p>
+
+    <p>Lorsqu&rsquo;il est construit en tant que module DSO, ce module peut &ecirc;tre
+    charg&eacute; avec la commande&nbsp;:</p>
+
+    <pre class="prettyprint lang-config">LoadModule mpm_worker_module modules/mod_mpm_worker.so</pre>
+
+
 </div>
 <div id="quickview"><h3>Sujets</h3>
 <ul id="topics">
@@ -82,6 +87,7 @@ multi-processus multi-thread</td></tr>
 </ul>
 <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mpm_worker">Probl&egrave;mes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mpm_worker">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
 <ul class="seealso">
+<li><a href="../mpm.html">Modules multi-processus (MPMs)</a></li>
 <li><a href="../bind.html">D&eacute;finition des adresses et ports
 qu'utilise le serveur HTTP Apache</a></li>
 </ul></div>
index b3d9e6b6434972a75d3d702e81b5df57c8657f5b..660a545e074b6c4bcea5d42df3532602272129b8 100644 (file)
@@ -9,7 +9,7 @@
   <variants>
     <variant outdated="yes">de</variant>
     <variant>en</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
     <variant outdated="yes">ja</variant>
     <variant outdated="yes">tr</variant>
   </variants>
index 65cc295f4451f43c1912e35c793d04331ac614a0..5be570d7869f4c497e4c258146c6632034c10647 100644 (file)
 <a href="../fr/platform/netware.html" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a> |
 <a href="../ko/platform/netware.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
 </div>
-<div class="outofdate">Cette traduction peut &ecirc;tre p&eacute;rim&eacute;e. V&eacute;rifiez la version
-            anglaise pour les changements r&eacute;cents.</div>
 
 
+    <div class="warning">
+    <p>Novell NetWare est en fin de vie et n&rsquo;est plus pris en charge. Ce
+    document est conserv&eacute; &agrave; titre de r&eacute;f&eacute;rence historique seulement. Les liens
+    vers des ressources de Novell initialement r&eacute;f&eacute;renc&eacute;es dans ce document ne
+    sont plus fonctionnels.</p>
+    </div>  
+
     <p>Ce document explique l'installation, la configuration et le
     lancement d'Apache 2.0 sous Novell NetWare 6.0 et les versions
     ult&eacute;rieures. Si vous trouvez une bogue, ou voulez tout simplement
     notre <a href="http://httpd.apache.org/bug_report.html">page des
     rapports de bogues.</a></p>
 
-    <p>La page des rapports de bogues et la liste de diffusion dev-httpd
-    ne doivent pas &ecirc;tre utilis&eacute;es pour poser des questions &agrave; propos de
-    la configuration ou du lancement d'Apache. Avant de soumettre un
-    rapport de bogue ou une question, consultez ce document, la <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> ou tout autre sujet de la
-    documentation en rapport avec votre probl&egrave;me. Si vous n'avez
-    toujours pas r&eacute;solu votre probl&egrave;me, postez votre question dans le
-    newsgroup <a href="news://developer-forums.novell.com/novell.devsup.webserver">
-    novell.devsup.webserver</a>, o&ugrave; de nombreux utilisateurs d'Apache
-    sont pr&ecirc;ts &agrave; r&eacute;pondre &agrave; toutes les nouvelles et obscures questions &agrave;
-    propos de l'utilisation d'Apache sous Netware.</p>
+    <p>La page des rapports de bogues et la liste de diffusion dev-httpd ne
+    doivent pas &ecirc;tre utilis&eacute;es pour poser des questions &agrave; propos de la
+    configuration ou du lancement d'Apache. Avant de soumettre un rapport de
+    bogue ou une question, consultez ce document, la <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> ou tout
+    autre sujet de la documentation en rapport avec votre probl&egrave;me. Si vous
+    n'avez toujours pas r&eacute;solu votre probl&egrave;me, postez votre question dans le
+    newsgroup novell.devsup.webserver (par le pass&eacute; &agrave;
+    <code>news://developer-forums.novell.com/novell.devsup.webserver</code>), o&ugrave;
+    de nombreux utilisateurs d'Apache sont pr&ecirc;ts &agrave; r&eacute;pondre &agrave; toutes les
+    nouvelles et obscures questions &agrave; propos de l'utilisation d'Apache sous
+    Netware.</p>
 
     <p>Dans la majeure partie de ce document, vous &ecirc;tes sens&eacute; avoir
     install&eacute; Apache &agrave; partir d'une distribution binaire. Si vous voulez
 
     
 
-    <p>Apache 2.0 n&eacute;cessite NetWare 6.0 service pack 3 et sup&eacute;rieurs
-    pour fonctionner. Si vous utilisez un service pack ant&eacute;rieur &agrave; SP3,
-    vous devez installer les derni&egrave;res <a href="http://developer.novell.com/ndk/libc.htm">Biblioth&egrave;ques
-    Netware pour C (LibC)</a>.</p>
+    <p>Apache 2.0 n&eacute;cessite NetWare 6.0 service pack 3 et sup&eacute;rieurs pour
+    fonctionner. Si vous utilisez un service pack ant&eacute;rieur &agrave; SP3, vous devez
+    installer les derni&egrave;res biblioth&egrave;ques Netware pour C (LibC) (par le
+    pass&eacute; &agrave; <code>http://developer.novell.com/ndk/libc.htm</code>).</p>
 
-    <p>Vous trouverez les service packs Netware <a href="http://support.novell.com/misc/patlst.htm#nw">ici</a>.</p>
+    <p>Vous pouviez trouver les services packs Netware &agrave; cette adresse&nbsp;: <code>http://support.novell.com/misc/patlst.htm#nw</code>.</p>
 
-    <p>Apache 2.0 pour NetWare peut aussi fonctionner dans un
-    environnement NetWare 5.1, &agrave; partir du moment o&ugrave; le dernier service
-    pack ou la derni&egrave;re version des <a href="http://developer.novell.com/ndk/libc.htm">Biblioth&egrave;ques
-    Netware pour C (LibC)</a> ont &eacute;t&eacute; install&eacute;s. <strong>ATTENTION
-    :</strong> Apache 2.0 pour NetWare n'a pas &eacute;t&eacute; test&eacute; dans cet
-    environnement car il n'a pas &eacute;t&eacute; con&ccedil;u pour ce dernier.</p>
+    <p>Apache 2.0 pour NetWare peut aussi fonctionner dans un environnement
+    NetWare 5.1, &agrave; partir du moment o&ugrave; le dernier service pack ou la derni&egrave;re
+    version des biblioth&egrave;ques Netware pour C (LibC) (anciennement &agrave;
+    <code>http://developer.novell.com/ndk/libc.htm</code>) ont &eacute;t&eacute; install&eacute;s.
+    <strong>ATTENTION :</strong> Apache 2.0 pour NetWare n'a pas &eacute;t&eacute; test&eacute; dans
+    cet environnement car il n'a pas &eacute;t&eacute; con&ccedil;u pour ce dernier.</p>
 
   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
 <div class="section">
       compilation d'Apache pour Netware :</p>
 
       <ul>
-        <li>Metrowerks CodeWarrior 6.0 ou sup&eacute;rieur avec le <a href="http://developer.novell.com/ndk/cwpdk.htm">NetWare PDK
-       3.0</a> ou sup&eacute;rieur.</li>
+       <li>Metrowerks CodeWarrior 6.0 ou sup&eacute;rieur avec le NetWare PDK 3.0
+       (anciennement &agrave; <code>http://developer.novell.com/ndk/cwpdk.htm</code>)
+       ou sup&eacute;rieur.</li>
 
-        <li>Les <a href="http://developer.novell.com/ndk/libc.htm">Biblioth&egrave;ques
-       Netware pour C (LibC)</a></li>
+       <li>Les biblioth&egrave;ques Netware pour C (LibC) (anciennement &agrave;
+       <code>http://developer.novell.com/ndk/libc.htm</code>)</li>
 
-        <li>Les <a href="http://developer.novell.com/ndk/cldap.htm">Biblioth&egrave;ques
-       LDAP pour C</a></li>
+       <li>Les biblioth&egrave;ques LDAP pour C (anciennement &agrave;
+       <code>http://developer.novell.com/ndk/cldap.htm</code>)</li>
 
         <li>Le <a href="http://www.gzip.org/zlib/">Code source de la
        biblioth&egrave;que de compression ZLIB</a></li>
 
-        <li>L'utilitaire AWK (awk, gawk ou similaire). AWK peut &ecirc;tre
-       t&eacute;l&eacute;charg&eacute; &agrave; <a href="http://developer.novell.com/ndk/apache.htm">http://developer.novell.com/ndk/apache.htm</a>.
-       L'utilitaire doit se trouver dans votre chemin windows et avoir
-       pour nom <code>awk.exe</code>.</li>
+       <li>L'utilitaire AWK (awk, gawk ou similaire). AWK peut &ecirc;tre t&eacute;l&eacute;charg&eacute;
+       &agrave; <code>http://developer.novell.com/ndk/apache.htm</code>.  L'utilitaire
+       doit se trouver dans votre chemin windows et avoir pour nom
+       <code>awk.exe</code>.</li>
 
-        <li>Pour utiliser les makefiles, vous devez disposer de GNU make
-       version 3.78.1 (GMake) disponible &agrave; <a href="http://developer.novell.com/ndk/apache.htm">http://developer.novell.com/ndk/apache.htm</a>.</li>
+       <li>Pour utiliser les makefiles, vous devez disposer de GNU make version
+       3.78.1 (GMake) disponible &agrave;
+       <code>http://developer.novell.com/ndk/apache.htm</code>..</li>
       </ul>
 
     
index 575ac8c5bde9a6241aee36a5fff50ec14bc2080a..3db34498aa0216c6268044c51206784e996edc56 100644 (file)
@@ -8,7 +8,7 @@
 
   <variants>
     <variant>en</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
     <variant outdated="yes">ko</variant>
   </variants>
 </metafile>
index 48e6feae1dfd4271d7cf2e30e01d8733e908171f..1143bff95db908986ee46d319f0b2ed3aa684274 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
 <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1933063:1934664 (outdated) -->
+<!-- English Revision: 1933063:1935424 (outdated) -->
 <!-- French translation : Lucien GENTIS -->
 <!-- Reviewed by : Vincent Deffontaines -->
 
index 33bc7c65d68d224db6d13e95e6122438fb3874a9..f40adff4c63051144360c9474f7fc894714d88f0 100644 (file)
@@ -26,8 +26,6 @@
 <p><span>Langues Disponibles: </span><a href="../en/rewrite/intro.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
 <a href="../fr/rewrite/intro.html" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a></p>
 </div>
-<div class="outofdate">Cette traduction peut &ecirc;tre p&eacute;rim&eacute;e. V&eacute;rifiez la version
-            anglaise pour les changements r&eacute;cents.</div>
 
 <p>Ce document est un compl&eacute;ment &agrave; la <a href="../mod/mod_rewrite.html">documentation de r&eacute;f&eacute;rence</a> du module
 <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>. Il d&eacute;crit les concepts de base dont la
@@ -44,9 +42,10 @@ pieds.
 <li><img alt="" src="../images/down.gif"> <a href="#rewritecond">Conditions de r&eacute;&eacute;criture</a></li>
 <li><img alt="" src="../images/down.gif"> <a href="#rewritemap">Tables de r&eacute;&eacute;criture</a></li>
 <li><img alt="" src="../images/down.gif"> <a href="#htaccess">Fichiers .htaccess</a></li>
+<li><img alt="" src="../images/down.gif"> <a href="#security">Consid&eacute;rations en mati&egrave;re de s&eacute;curit&eacute;</a></li>
 </ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="../mod/mod_rewrite.html">Documentation du
-module mod_rewrite</a></li><li><a href="remapping.html">Redirection and remise en
-correspondance</a></li><li><a href="access.html">Contr&ocirc;le d'acc&egrave;s</a></li><li><a href="vhosts.html">Serveurs virtuels</a></li><li><a href="proxy.html">Mise en cache</a></li><li><a href="rewritemap.html">Utilisation de RewriteMap</a></li><li><a href="advanced.html">Techniques avanc&eacute;es</a></li><li><a href="avoid.html">Quand ne pas utiliser mod_rewrite</a></li></ul></div>
+module mod_rewrite</a></li><li><a href="remapping.html">Redirection et remise en
+correspondance</a></li><li><a href="htaccess.html">R&eacute;&eacute;critures par r&eacute;pertoire</a></li><li><a href="flags.html">Drapeaux de RewriteRule</a></li><li><a href="vhosts.html">Serveurs virtuels</a></li><li><a href="rewritemap.html">Utilisation de RewriteMap</a></li><li><a href="avoid.html">Quand ne pas utiliser mod_rewrite</a></li><li><a href="tech.html">D&eacute;tails techniques</a></li></ul></div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
 <div class="section">
 <h2 id="introduction">Introduction <a title="Lien permanent" href="#introduction" class="permalink">&para;</a></h2>
@@ -76,14 +75,23 @@ le d&eacute;bogage des probl&egrave;mes avec la configuration de
 <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> est &agrave; ce prix car vous verrez alors
 exactement comment chaque r&egrave;gle est trait&eacute;e.</p>
 
+<p class="figure">
+      <img src="../images/rewrite_simplified_overview.png" alt="Organigramme simplifi&eacute; du fonctionnement de mod_rewrite&nbsp;: arriv&eacute;e de la requ&ecirc;te, v&eacute;rification RewriteEngine On, traitement des r&egrave;gles dans l&rsquo;ordre, test de correspondance du motif et des RewriteCond, application des substitutions si ces deux tests sont positifs, arr&ecirc;t du traitement des r&egrave;gles si un drapeau L ou END est d&eacute;fini, sinon traitement de la r&egrave;gle suivante"><br>
+      <dfn>Figure :</dfn> Pr&eacute;sentation simplifi&eacute;e de la mani&egrave;re dont
+<code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> traite une requ&ecirc;te. Voir <a href="tech.html">D&eacute;tails techniques</a> pour une description compl&egrave;te du
+traitement avec les phases, les drapeaux et le bouclage.
+</p>
+
 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
 <div class="section">
 <h2 id="regex">Expressions rationnelles <a title="Lien permanent" href="#regex" class="permalink">&para;</a></h2>
 
-<p>mod_rewrite utilise le vocabulaire des <a href="http://pcre.org/">Expressions rationnelles compatibles Perl</a>.
+<p><code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> utilise le vocabulaire des <a href="https://www.pcre.org/current/doc/html/pcre2syntax.html">Expressions
+rationnelles compatibles avec Perl</a> &agrave; l&rsquo;aide de la biblioth&egrave;que PCRE2.
 Ce document n'a pas pour pr&eacute;tention d'&ecirc;tre une r&eacute;f&eacute;rence d&eacute;taill&eacute;e des
-expressions rationnelles. A cet effet, nous recommandons les <a href="http://pcre.org/pcre.txt">pages de manuel de PCRE</a>, la <a href="http://perldoc.perl.org/perlre.html">page de manuel des
-expressions rationnelles Perl</a>, et l'ouvrage <a href="https://www.oreilly.com/library/view/mastering-regular-expressions/0596528124/">Mastering
+expressions rationnelles. A cet effet, nous recommandons la <a href="https://www.pcre.org/current/doc/html/pcre2syntax.html">documentation de
+PCRE2</a>, la <a href="https://perldoc.perl.org/perlre.html">page de manuel des
+expressions rationnelles de Perl</a>, et l'ouvrage <a href="https://www.oreilly.com/library/view/mastering-regular-expressions/0596528124/">Mastering
 Regular Expressions, par Jeffrey Friedl</a> (la troisi&egrave;me &eacute;dition date
 de 2006, mais la syntaxe des expressions rationnelles n'a pas vraiment
 chang&eacute;, et cet ouvrage reste la r&eacute;f&eacute;rence en la mati&egrave;re).</p>
@@ -151,18 +159,27 @@ correspond &agrave; tout caract&egrave;re ne faisant pas partie de la classe</td
 <code>c=t</code> mais pas &agrave; <code>c/t</code></td></tr>
 </table>
 
-<p>Avec <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>, le caract&egrave;re <code>!</code> peut
+<p>Le caract&egrave;re <code>!</code> (Not) peut
 pr&eacute;fixer une expression rationnelle afin d'en exprimer la n&eacute;gation.
 Autrement dit, une cha&icirc;ne ne correspondra que si elle ne correspond pas
 &agrave; l'expression situ&eacute;e apr&egrave;s le <code>!</code>.</p>
 
+<p>Notez que lorsqu&rsquo;on utilise <code>!</code> pour inverser un motif, les <a href="#InternalBackRefs">r&eacute;f&eacute;rences arri&egrave;res</a> (par exemple <code>$1</code>,
+<code>$2</code>) ne sont pas disponibles, car le motif ne correspond plus.</p>
+
+<p>La r&egrave;gle suivante, par exemple, redirige toute requ&ecirc;te qui ne commence
+<em>pas</em> par <code>/admin</code></p>
+
+<pre class="prettyprint lang-config">RewriteRule "!^/admin" "/xyz.html" [R,L]</pre>
+
+
 
 
 <h3 id="InternalBackRefs">Disponibilit&eacute; des r&eacute;f&eacute;rences
 arri&egrave;res dans les expressions rationnelles</h3>
 
       <p>Vous devez vous souvenir d'une chose importante : chaque fois
-      que vous utilisez des parenth&egrave;ses dans un <em>Mod&egrave;le</em> ou dans
+      que vous utilisez des parenth&egrave;ses dans un <em>Motif</em> ou dans
       un des <em>mod&egrave;les de conditions</em>, des r&eacute;f&eacute;rences arri&egrave;res
       sont cr&eacute;&eacute;es en interne et peuvent &ecirc;tre rappel&eacute;es via les cha&icirc;nes
       <code>$N</code> et <code>%N</code> (voir ci-dessous). Ces
@@ -184,13 +201,18 @@ arri&egrave;res dans les expressions rationnelles</h3>
       elles vous paraissent un peu exotiques au premier abord.</p>
 
 <p class="figure">
-      <img src="../images/rewrite_backreferences.png" alt="Flux des comparaisons effectu&eacute;es par les r&egrave;gles RewriteRule       et RewriteCond"><br>
+      <img src="../images/rewrite_backreferences.png" alt="Diagramme montrant la mani&egrave;re dont les r&eacute;f&eacute;rences arri&egrave;res circulent entre les RewriteRule et les RewriteCond&nbsp;: $1-$9 capturent des groupes issus des motifs RewriteRule, %1-%9 capturent des groupes issus des motifs des cha&icirc;nes &agrave; tester (ou TestStrings) de RewriteCond, les deux &eacute;tant disponibles dans les cha&icirc;nes de substitution et dans les cha&icirc;nes &agrave; tester de RewriteCond subs&eacute;quentes"><br>
       <dfn>Figure 1 :</dfn> Le cheminement d'une r&eacute;f&eacute;rence arri&egrave;re &agrave;
       travers une r&egrave;gle.<br>
-      Dans cet exemple, une requ&ecirc;te pour <code>/test/1234</code> serait
+      Dans cet exemple, une requ&ecirc;te pour <code>/test/1234</code> vers l&rsquo;h&ocirc;te <code>admin.example.com</code> serait
       transform&eacute;e en
-      <code>/admin.foo?page=test&amp;id=1234&amp;host=admin.example.com</code>.
+      <code>/admin.foo?page=test&amp;id=1234&amp;host=admin.example.com</code>,
+      sous r&eacute;serve que <code>%{DOCUMENT_ROOT}/test</code> ne soit pas un fichier
+      existant.
 </p>
+      <p>Voir aussi <a href="tech.html#InternalRuleset">D&eacute;tails techniques</a>
+      pour un diagramme montrant le cheminement des r&eacute;f&eacute;rences arri&egrave;res avec des
+      conditions multiples.</p>
 
 
 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
@@ -199,27 +221,42 @@ arri&egrave;res dans les expressions rationnelles</h3>
 <p>Une r&egrave;gle de r&eacute;&eacute;criture <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> est constitu&eacute;e de trois
 arguments s&eacute;par&eacute;s par des espaces. Les arguments sont :</p>
 <ol>
-<li><var>Mod&egrave;le</var>: le mod&egrave;le des URLs auxquelles la r&egrave;gle doit
+<li><var>Motif</var>: le motif des URLs auxquelles la r&egrave;gle doit
 s'appliquer;</li>
 <li><var>Substitution</var>: vers quoi la requ&ecirc;te correspondante doit &ecirc;tre
 transform&eacute;e;</li>
 <li><var>[drapeaux]</var>: options affectant la requ&ecirc;te r&eacute;&eacute;crite.</li>
 </ol>
 
-<p>Le <var>Mod&egrave;le</var> est une <a href="#regex">expression
-rationnelle</a>. Au sein de la premi&egrave;re r&egrave;gle de r&eacute;&eacute;criture, ou jusqu'&agrave;
-ce qu'une substitution survienne, elle est compar&eacute;e au chemin de
-l'URL de la requ&ecirc;te entrante (la
-partie situ&eacute;e apr&egrave;s le nom d'h&ocirc;te mais avant tout point d'interrogation
-qui indique le d&eacute;but d'une cha&icirc;ne de param&egrave;tres de
-requ&ecirc;te) ou, dans un contexte de r&eacute;pertoire, au chemin de la
-requ&ecirc;te relativement au r&eacute;pertoire pour lequel la
-r&egrave;gle est d&eacute;finie. Lorsqu'une substitution a eu lieu, les
-r&egrave;gles suivantes effectuent leurs comparaisons par rapport &agrave; la valeur
-substitu&eacute;e.</p>
+<p>Le <var>Motif</var> est une <a href="#regex">expression
+rationnelle</a>. Dans un contexte de serveur virtuel ou de serveur global, il
+est compar&eacute; au <a href="../directive-dict.html#Syntax">chemin d&rsquo;URL</a> %-d&eacute;cod&eacute;
+de la requ&ecirc;te entrante &mdash; la partie apr&egrave;s le nom d&rsquo;h&ocirc;te et le port, en
+excluant la cha&icirc;ne de param&egrave;tres (par exemple <code>/app/index.html</code>).
+Dans un <a class="glossarylink" href="../glossary.html#perdirectory" title="voir glossaire">contexte de r&eacute;pertoire</a>, le motif
+est compar&eacute; au chemin de la requ&ecirc;te relatif au r&eacute;pertoire pour lequel la r&egrave;gle
+est d&eacute;finie (avec le pr&eacute;fixe de r&eacute;pertoire supprim&eacute; &mdash; voir <a href="htaccess.html#path-stripping">R&eacute;&eacute;critures par r&eacute;pertoire</a> pour les
+d&eacute;tails).
+</p>
+
+<p>Lorsqu&rsquo;une substitution a &eacute;t&eacute; effectu&eacute;e, toute r&egrave;gle qui suit est compar&eacute;e &agrave;
+la valeur substitu&eacute;e.</p>
+
+<p>Le <var>Motif</var> n&rsquo;est compar&eacute; qu&rsquo;au chemin d&rsquo;URL &mdash; &agrave; l&rsquo;exclusion
+des nom d&rsquo;h&ocirc;te, port ou cha&icirc;ne de param&egrave;tres. Pour une comparaison incluant ces
+derniers, utilisez une condition <code class="directive"><a href="../mod/mod_rewrite.html#rewritecond">RewriteCond</a></code> avec les variables
+<code>%{HTTP_HOST}</code>, <code>%{SERVER_PORT}</code> ou
+<code>%{QUERY_STRING}</code>, respectivement.</p>
+
+<div class="note"><code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> op&egrave;re exclusivement sur le chemin d&rsquo;URL et les
+en-t&ecirc;tes HTTP. Il ne peut pas inspecter le corps de la requ&ecirc;te (par exemple, les
+donn&eacute;es POST). Si vous devez prendre des d&eacute;cisions de routage en fonction du
+contenu du corps de la requ&ecirc;te, traitez le probl&egrave;me &agrave; l&rsquo;aide de la logique de
+votre application ou utilisez un module tel que <code class="module"><a href="../mod/mod_request.html">mod_request</a></code>
+associ&eacute; &agrave; un filtre personnalis&eacute;.</div>
 
 <p class="figure">
-      <img src="../images/syntax_rewriterule.png" alt="Syntaxe de la directive RewriteRule"><br>
+      <img src="../images/syntax_rewriterule.png" alt="Diagramme annot&eacute; pour la syntaxe de la directive RewriteRule montrant trois composants&nbsp;: le motif (une expression rationnelle mise en correspondance avec le chemin d&rsquo;URL, la substitution (l&rsquo;URL ou le chemin de remplacement) et des drapeaux facultatifs entour&eacute;s de crochets"><br>
       <dfn>Figure 2 :</dfn> Syntaxe de la directive RewriteRule.
 </p>
 
@@ -263,12 +300,12 @@ le cas avec <strong>2</strong> (par exemple, il n'y a pas de r&eacute;pertoire
 
 <p>La cha&icirc;ne de <var>Substitution</var> peut aussi contenir des
 <em>r&eacute;f&eacute;rences arri&egrave;res</em> vers des parties du chemin d'URL entrant
-correspondant au <var>Mod&egrave;le</var>. Consid&eacute;rons ce qui suit :</p>
+correspondant au <var>Motif</var>. Consid&eacute;rons ce qui suit :</p>
 <pre class="prettyprint lang-config">RewriteRule "^/produits/(.*)/view$" "/var/web/produitsdb/$1"</pre>
 
 <p>La variable <code>$1</code> sera remplac&eacute;e par tout texte
 correspondant &agrave; l'expression situ&eacute;e entre les parenth&egrave;ses dans le
-<var>Mod&egrave;le</var>. Par exemple, une requ&ecirc;te pour
+<var>Motif</var>. Par exemple, une requ&ecirc;te pour
 <code>http://example.com/produits/r14df/vue</code> correspondra au
 chemin <code>/var/web/produitsdb/r14df</code>.</p>
 
@@ -304,7 +341,7 @@ est une liste de drapeaux qui modifient la mani&egrave;re dont la
 correspondance est &eacute;valu&eacute;e.</p>
 
 <p class="figure">
-      <img src="../images/syntax_rewritecond.png" alt="Syntaxe de la directive RewriteCond"><br>
+      <img src="../images/syntax_rewritecond.png" alt="Diagramme annot&eacute; pour la syntaxe de la directive RewriteCond montrant deux composants&nbsp;: la cha&icirc;ne &agrave; tester ou TestString (une variable ou du texte &agrave; tester) et le motif de condition ou CondPattern (expression rationnelle ou comparaison &agrave; &eacute;valuer) avec des drapeaux facultatifs entour&eacute;s de crochets"><br>
       <dfn>Figure 3 :</dfn> Syntaxe de la directive RewriteCond
 </p>
 
@@ -357,20 +394,87 @@ suppl&eacute;mentaire sur RewriteMap</a>.</p>
 <div class="section">
 <h2 id="htaccess">Fichiers .htaccess <a title="Lien permanent" href="#htaccess" class="permalink">&para;</a></h2>
 
-<p>La r&eacute;&eacute;criture est en g&eacute;n&eacute;ral d&eacute;finie au niveau de la configuration du
-serveur principal (en dehors de toute section <code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code>) ou dans une section  <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>. Il s'agit l&agrave; de la
-mani&egrave;re la plus simple de mettre en oeuvre la r&eacute;&eacute;criture et nous la
-recommandons. Il est possible, cependant, de mettre en oeuvre la
-r&eacute;&eacute;criture au sein d'une section <code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code> ou d'un fichier <a href="../howto/htaccess.html"><code>.htaccess</code></a> ; ce type de
-configuration est cependant plus complexe. Cette technique est appel&eacute;e
-r&eacute;&eacute;criture par r&eacute;pertoire.</p>
-
-<p>La principale diff&eacute;rence avec les r&eacute;&eacute;critures au niveau du serveur r&eacute;side
-dans le fait que le pr&eacute;fixe du chemin du r&eacute;pertoire contenant le fichier
-<code>.htaccess</code> est supprim&eacute; avant la mise en correspondance dans
-la r&egrave;gle <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>. De
-plus, on doit utiliser la directive <code class="directive"><a href="../mod/mod_rewrite.html#rewritebase">RewriteBase</a></code> pour s'assurer que la
-requ&ecirc;te est correctement mise en correspondance.</p>
+<p>Il est possible d&rsquo;utiliser des r&egrave;gles de r&eacute;&eacute;criture dans un <a class="glossarylink" href="../glossary.html#perdirectory" title="voir glossaire">contexte de r&eacute;pertoire</a> (fichiers <a href="../howto/htaccess.html"><code>.htaccess</code></a> et sections <code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code>), mais dans ce cas, les
+r&egrave;gles se comportent diff&eacute;remment &mdash;&nbsp;en particulier, le pr&eacute;fixe du r&eacute;pertoire est
+supprim&eacute; de l&rsquo;URL avant la recherche de correspondance. Voir le document <a href="htaccess.html#path-stripping">R&eacute;&eacute;critures dans un contexte de
+r&eacute;pertoire</a> pour une explication d&eacute;taill&eacute;e. Notez que les sections <code class="directive"><a href="../mod/core.html#if">&lt;If&gt;</a></code> et <code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code> adoptent aussi le comportement du contexte
+de r&eacute;pertoire &mdash; voir <a href="htaccess.html#context-restrictions">Quels
+contextes prennent en charge les r&egrave;gles de r&eacute;&eacute;criture ?</a>.</p>
+
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
+<div class="section">
+<h2 id="security">Consid&eacute;rations en mati&egrave;re de s&eacute;curit&eacute; <a title="Lien permanent" href="#security" class="permalink">&para;</a></h2>
+
+<p><code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> est un outil de manipulation d&rsquo;URL puissant,
+mais qui dit puissance dit risque d&rsquo;erreurs li&eacute;es &agrave; la s&eacute;curit&eacute;. Cette section
+met en lumi&egrave;re les pi&egrave;ges en mati&egrave;re de s&eacute;curit&eacute; courants &agrave; &eacute;viter lors de
+la r&eacute;daction de r&egrave;gles de r&eacute;&eacute;critures.</p>
+
+<h3 id="security-redirect">Redirections ouvertes</h3>
+
+<p>Si une r&egrave;gle <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>
+construit un URL de redirection en utilisant une entr&eacute;e utilisateur non valid&eacute;e,
+un attaquant pourra fabriquer un lien qui redirige les visiteurs vers un site
+malveillant semblant provenir de votre domaine. Cette vuln&eacute;rabilit&eacute; est connue
+sous le nom de <em>redirection ouverte</em>.</p>
+
+<p>Par exemple, cette r&egrave;gle est dangereuse&nbsp;:</p>
+
+<pre class="prettyprint lang-config"># DANGEREUX - permet une redirection ouverte
+RewriteRule "^/redirect" "%{QUERY_STRING}" [R,L]</pre>
+
+
+<p>Un attaquant pourrait en effet utiliser
+<code>https://yoursite.com/redirect?https://evil.com</code> pour rediriger les
+utilisateurs vers un site malveillant. Assurez vous de toujours valider ou
+contraindre les cibles de redirection. Si la destination doit &ecirc;tre sur votre
+propre site, assurez vous que la substitution commence par <code>/</code> (un
+chemin relatif) plut&ocirc;t que de permettre &agrave; l&rsquo;utilisateur d&rsquo;entrer un URL complet.</p>
+
+
+
+<h3 id="security-ssrf">Server-Side Request Forgery (SSRF)</h3>
+
+<p>Lorsqu&rsquo;on utilise la drapeau <a href="flags.html#flag_p">[P] (proxy)</a>,
+<code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> fait que le serveur
+effectue une requ&ecirc;te HTTP vers l&rsquo;URL de substitution de la part du client. Si
+une partie de cet URL est d&eacute;riv&eacute;e de l&rsquo;entr&eacute;e du client &mdash;&nbsp;r&eacute;f&eacute;rences arri&egrave;res,
+cha&icirc;nes de param&egrave;tres ou en-t&ecirc;tes &mdash;&nbsp;un attaquant pourrait faire que votre
+serveur effectue des requ&ecirc;tes vers des services internes arbitraires ou des
+h&ocirc;tes externes.</p>
+
+<p>Par exemple&nbsp;:</p>
+
+<pre class="prettyprint lang-config"># DANGEREUX - l&rsquo;utilisateur contr&ocirc;le la cible du mandataire
+RewriteCond "%{QUERY_STRING}" "target=(.+)"
+RewriteRule "^/fetch" "http://%1" [P]</pre>
+
+
+<p>Un attaquant pourrait utiliser cette configuration pour tester des services
+r&eacute;seau internes qui autrement ne seraient pas accessibles depuis l&rsquo;Internet.
+Utilisez toujours un nom d&rsquo;h&ocirc;te fixe dans les cibles de mandataire et limitez
+les r&eacute;f&eacute;rences arri&egrave;res &agrave; la partie chemin seulement.</p>
+
+
+
+<h3 id="security-path">Travers&eacute;e de chemin</h3>
+
+<p>Des r&egrave;gles de r&eacute;&eacute;criture qui associent directement des composants du chemin
+fournis par l&rsquo;utilisateur au syst&egrave;me de fichier ouvrent la voie &agrave; des attaques
+de travers&eacute;e de chemin si l&rsquo;entr&eacute;e n&rsquo;est pas correctement contrainte. Par
+exemple&nbsp;:</p>
+
+<pre class="prettyprint lang-config"># DANGEREUX - permet une travers&eacute;e de chemin
+RewriteRule "^/files/(.+)" "/var/data/$1" [L]</pre>
+
+
+<p>Une requ&ecirc;te pour <code>/files/../../etc/passwd</code> pourrait acc&eacute;der &agrave; des
+fichiers en dehors du r&eacute;pertoire souhait&eacute;. Utilisez des motifs restreints dans
+votre r&egrave;gle <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> (par exemple
+<code>[a-zA-Z0-9_-]+</code> au lieu de <code>.+</code>), et utilisez les
+protections int&eacute;gr&eacute;es d&rsquo;Apache httpd (restrictions <code class="directive"><a href="../mod/core.html#options">Options</a></code> et <code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code>) pour une d&eacute;fense en profondeur.</p>
+
+
 
 </div></div>
 <div class="bottomlang">
index ce245b2841ca052c89d1608a46eb15c79f469bd8..5aaac0fc8675ccc7e032ca6c835170e209509b1d 100644 (file)
@@ -8,6 +8,6 @@
 
   <variants>
     <variant>en</variant>
-    <variant outdated="yes">fr</variant>
+    <variant>fr</variant>
   </variants>
 </metafile>
index d8d4d432e39a4da504167dfbad8eecd720c74c54..8f1a8a759b3530da0221052845d2c59fa2161441 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" ?>
 <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
 <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1933719:1934664 (outdated) -->
+<!-- English Revision: 1933719:1935431 (outdated) -->
 <!-- French translation : Lucien GENTIS -->
 <!-- Reviewed by : Vincent Deffontaines -->