<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
-<!-- English Revision: 1933190:1933740 (outdated) -->
+<!-- English Revision: 1933740 -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?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: 1922957:1934600 (outdated) -->
+<!-- English Revision: 1934600 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<seealso><directive module="mod_ssl">SSLRequire</directive></seealso>
<seealso><directive module="mod_log_debug">LogMessage</directive></seealso>
<seealso><module>mod_include</module></seealso>
+<seealso><a href="env.html">Variables d’environnement dans Apache httpd</a></seealso>
<section id="grammar">
<title>Syntaxe en Forme de Backus-Naur</title>
la phase d'authentification. Par conséquent, la variable
<code>%{REMOTE_USER}</code> ne sera pas encore définie à ce stade.</p>
+ <p>Pour des informations à propos de la définition et de la manipulation des
+ variables d’environnement de requête (en utilisant <directive
+ module="mod_env">SetEnv</directive>, <directive
+ module="mod_setenvif">SetEnvIf</directive>, le drapeau <code>[E=...]</code>
+ de <module>mod_rewrite</module>'s et d’autres directives), voir <a
+ href="env.html">Variables d’environnement dans Apache httpd</a>.</p>
+
<p>Les variables suivantes contiennent la valeur de l'en-tête de
requête HTTP correspondant. La <a href="#functions">fonction</a>
<code>req</code> permet d'extraire les valeurs des autres
<tr><td><code>REQUEST_SCHEME</code></td>
<td>Le protocole associé à l'URI de la requête</td></tr>
<tr><td><code>REQUEST_URI</code></td>
- <td>La partie chemin de l'URI de la requête</td></tr>
+ <td>La partie chemin de l'URI de la requête en excluant la chaîne de
+ paramètres. Notez que cette variable diffère de la variable
+ d’environnement CGI de même nom qui, quant à elle, inclut la chaîne de
+ paramètres.</td></tr>
<tr><td><code>DOCUMENT_URI</code></td>
<td>Idem <code>REQUEST_URI</code></td></tr>
<tr><td><code>REQUEST_FILENAME</code></td>
l'expression a été utilisée.
</note>
+ <p>La fonction <code>reqenv</code> permet de tester les <a
+ href="env.html#special">variables d’environnement à utilisation spéciale</a>
+ (telles que <code>no-gzip</code>, <code>nokeepalive</code>, etc.), ainsi que
+ toute variable définie à l’aide de <a href="env.html#setting">SetEnv,
+ SetEnvIf ou mod_rewrite</a>.</p>
+
<p>Lorsque les fonctions <code>req</code> ou <code>http</code> sont
utilisées, le nom d'en-tête sera automatiquement ajouté à l'en-tête
Vary de la réponse HTTP, sauf spécification contraire pour la
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1933137:1933948 (outdated) -->
+<!-- English Revision: 1933948 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
</section>
+<section id="files"><title>Fichiers</title>
+
+<p>Les chemins de fichiers listés ci-après peuvent être modifiés à la
+compilation. Consultez votre installation locale pour les emplacements réels.</p>
+
+<dl>
+<dt><code>/usr/local/apache2/bin/envvars</code></dt>
+<dd>Fichier de définitions de variables d’environnement alimenté au démarrage.</dd>
+
+<dt><code>/usr/local/apache2/bin/httpd</code></dt>
+<dd>Le binaire httpd invoqué par apachectl.</dd>
+</dl>
+
+</section>
+
</manualpage>
<?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: 1933137:1933948 (outdated) -->
+<!-- English Revision: 1933948 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
fichier d'entrée dans le but de le mettre à jour, il renvoie un code
d'erreur et n'effectue aucune modification.</p>
- <p>Il est possible de limiter l'accès aux ressources du serveur HTTP
+<p>Il est possible de limiter l'accès aux ressources du serveur HTTP
Apache aux seuls utilisateurs présents dans les fichiers créés par
<program>htpasswd</program>. Ce programme ne sait gérer les noms
d'utilisateurs et mots de passe que s'ils sont stockés dans des
- fichiers textes. Il peut cependant hacher et afficher les mots de
+ fichiers textes. Il peut cependant hasher et afficher les mots de
passe à des fins d'utilisation dans d'autres types de bases de
données. Pour utiliser une base de données DBM, voir le programme
<program>dbmmanage</program> ou <program>htdbm</program>.</p>
- <p><program>htpasswd</program> hache les mots de passe en utilisant bcrypt, une
- version de MD5 modifiée pour Apache, SHA-1 ou la routine système
- <code>crypt()</code>. Les hachages de type SHA-2 (SHA-256 and SHA-512) sont
- pris en charge pour <code>crypt()</code>. Les fichiers gérés par
- <program>htpasswd</program> peuvent contenir un mélange de différents types de
- codage des mots de passe ; par exemple, certaines entrées utilisateur
- pourront comporter des mots de passe hachés avec bcrypt ou MD5, alors que
- d'autres dans le même fichier pourront comporter des mots de passe hachés
- avec <code>crypt()</code>.</p>
+ <p><program>htpasswd</program> hashe les mots de passe en utilisant soit bcrypt,
+ une version de MD5 modifiée pour Apache, soit SHA1, soit la routine
+ <code>crypt()</code> du système. Les hashes basés sur SHA-2 (SHA-256 et
+ SHA-512) sont supportés pour <code>crypt()</code>. Les fichiers gérés par
+ <program>htpasswd</program> peuvent contenir deux types de mots de passe ;
+ certaines entrées peuvent contenir des mots de passe hashés en MD5 ou
+ bcrypt, alors que d'autres entrées du même fichier contiendront des mots de
+ passe hashés avec <code>crypt()</code>.</p>
<p>Cette page de manuel ne décrit que les arguments de la ligne de
commande. Pour plus de détails à propos des directives nécessaires à
<code>-c</code> option.</dd>
<dt><code>-m</code></dt>
- <dd>Utilise le hachage MD5 pour les mots de passe. C'est le
+ <dd>Utilise le hashage MD5 pour les mots de passe. C'est le
comportement par défaut (depuis la version 2.2.18).</dd>
<dt><code>-2</code></dt>
- <dd>Utilise les hachages SHA-256 basés sur <code>crypt()</code> pour les
- mots de passe. Pris en charge sur la plupart des plateformes de style Unix.</dd>
+ <dd>Utilise des hashes basés sur SHA-256 <code>crypt()</code> pour les mots
+ de passe. Supporté par la plupart des plateformes de style Unix.</dd>
<dt><code>-5</code></dt>
- <dd>Utilise les hachages SHA-512 basés sur <code>crypt()</code> pour les
- mots de passe. Pris en charge sur la plupart des plateformes de style Unix.</dd>
+ <dd>Utilise des hashes basés sur SHA-512 <code>crypt()</code> pour les mots
+ de passe. Supporté par la plupart des plateformes de style Unix.</dd>
<dt><code>-B</code></dt>
- <dd>Utilise bcrypt pour hacher les mots de passe. c'est un
+ <dd>Utilise bcrypt pour hasher les mots de passe. c'est un
algorythme de chiffrement actuellement considéré comme sûr.</dd>
<dt><code>-C</code></dt>
<dd>Ce drapeau n'est autorisé qu'en conjonction avec le drapeau
- <code>-B</code> (hachage bcrypt). Il permet de définir la durée
+ <code>-B</code> (hashage bcrypt). Il permet de définir la durée
de traitement pour l'algorytme bcrypt (plus elle est longue,
meilleure sera la sécurité, mais inférieure la rapidité). La valeur
par défaut est 5 et les valeurs autorisées vont de 4 à 17.</dd>
<dt><code>-r</code></dt>
- <dd>Ce drapeau n'est autorisé qu'en combinaison avec les drapeaux
+ <dd>Ce drapeau n'est autorisé qu'en combinaison avec un des drapeaux
<code>-2</code> ou <code>-5</code>. Il permet de définir le nombre de passes
- de hachage utilisé pour les algorithmes SHA-2 (un nombre élevé améliore la
- sécurité mais le traitement est plus lent ; la valeur par défaut est 5000.</dd>
+ de hash utilisées pour l'algorithme SHA-2 (plus ce nombre est élevé, plus la
+ sécurité est élevée, mais plus les performances se dégradent ; la valeur par
+ défaut est 5000).</dd>
<dt><code>-d</code></dt>
- <dd>Utilise le hachage <code>crypt()</code> pour les mots de
+ <dd>Utilise le hashage <code>crypt()</code> pour les mots de
passe. Cette option n'est pas supportée par le
serveur <program>httpd</program> sous Windows ou Netware. Cet
algorithme limite la longueur des mots de passe à 8 caractères ; il
version 2.2.17.</dd>
<dt><code>-s</code></dt>
- <dd>Utilise le hachage SHA-1 (160-bit) pour les mots de passe. Facilite la
- migration vers/depuis les serveurs Netscape qui utilisent le format
- LDAP Directory Interchange (ldif). Cet algorithme
- est considéré comme <strong>non sûr</strong> du point de vue des
- normes actuelles.</dd>
+ <dd>Utilise le hashage SHA-1 (160 bits) pour les mots de passe. Facilite
+ la migration vers/depuis les serveurs Netscape qui utilisent le format LDAP
+ Directory Interchange (ldif). Cet algorithme est considéré comme <strong>non
+ sur</strong> du point de vue des standards actuels.</dd>
<dt><code>-p</code></dt>
<dd>Enregistre les mots de passe en clair. Bien que
contraire, le mot de passe est modifié.</dd>
<dt><code><var>mot-de-passe</var></code></dt>
- <dd>Le mot de passe en clair et destiné à être haché puis stocké
+ <dd>Le mot de passe en clair et destiné à être hashé puis stocké
dans le fichier. Cet argument ne s'utilise qu'avec l'option
<code>-b</code>.</dd>
</dl>
<p>Ajoute ou modifie le mot de passe de l'utilisateur
<code>jsmith</code>. Le mot de passe est demandé à l'opérateur. Le
- mot de passe sera haché en utilisant l'algorithme MD5
+ mot de passe sera hashé en utilisant l'algorithme MD5
modifié pour Apache. Si le fichier spécifié
n'existe pas, <program>htpasswd</program> renverra un code d'erreur.</p>
setuid.</p>
<p>L'utilisation de l'option <code>-b</code> est déconseillée, car
- avec elle, les mots de passe apparaissent en clair sur la ligne de
+ avec elle, les mots de passe apparaissent en clair dans la ligne de
commande.</p>
<p>Notez qu'avec l'algorithme <code>crypt()</code>, seuls les huit
le mot de passe spécifié est plus long, les caractères
supplémentaires sont ignorés.</p>
- <p>Le format de hachage SHA-1 n'utilise pas d'amorçage aléatoire
+ <p>Le format de hashage SHA-1 n'utilise pas d'amorçage aléatoire
(salting) : à un mot de passe donné correspond une seule
- représentation hachée. Les formats <code>crypt()</code> et MD5
+ représentation hashée. Les formats <code>crypt()</code> et MD5
permutent la représentation en la préfixant par une chaîne d'amorce
aléatoire, afin de rendre les attaques de mots de passe à base de
dictionnaires plus difficiles.</p>
sont considérés comme <strong>non surs</strong> du point de vue des
standards actuels.</p>
- <p>Les formats de <code>crypt()</code> basés sur SHA-2 (SHA-256 et SHA-512)
- sont pris en charge sur la plupart des systèmes de style Unix récents et
- respectent la spécification de <a
+ <p>Les algorithmes de chiffrement SHA-2 (SHA-256 et SHA-512) sont supportés
+ par la plupart des systèmes de style Unix modernes et respectent la
+ spécification <a
href="https://www.akkadia.org/drepper/SHA-crypt.txt">https://www.akkadia.org/drepper/SHA-crypt.txt</a>.</p>
- </section>
+</section>
<section id="restrictions"><title>Restrictions</title>
<p>Sur les plates-formes Windows, la taille des mots de passe
- hachés avec <program>htpasswd</program> est limitée à <code>255</code>
+ hashés avec <program>htpasswd</program> est limitée à <code>255</code>
caractères. Les mots de passe dont la taille est supérieure seront
tronqués.</p>
<p>L'algorithme MD5 utilisé par <program>htpasswd</program> est spécifique
- à Apache ; les mots de passe hachés en utilisant cet algorithme
+ à Apache ; les mots de passe hashés en utilisant cet algorithme
seront inutilisables sur d'autres serveurs Web.</p>
<p>La taille des noms d'utilisateurs est limitée à <code>255</code>
<code>apr-util</code> limite le nombre de passes à 17.</p>
</section>
+<section id="files"><title>Fichiers</title>
+
+<p>Le chemin du fichier des mots de passe est spécifié en tant qu’argument de la
+ligne de commande et il peut correspondre à n’importe quel emplacement du
+système de fichiers.</p>
+
+<dl>
+<dt><var>fichier des mots de passe</var></dt>
+<dd>Le fichier plat contenant les noms utilisateur et les mots de passe. Il peut
+contenir des lignes vides et des lignes de commentaire commençant par un (<code>#</code>).</dd>
+</dl>
+
+</section>
+
</manualpage>
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
-<!-- English Revision: 1905717:1933723 (outdated) -->
+<!-- English Revision: 1933723 -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
directives qu'ils contiennent seront ignorées.</p>
<p>Le conteneur <directive type="section" module="core">IfDefine</directive>
-contient des directives qui ne seront appliquées que si un paramètre
-approprié a été défini dans la ligne de commande de <program>httpd</program>.
-Par exemple,
-avec la configuration suivante, toutes les requêtes seront redirigées vers
-un autre site si le serveur est démarré en utilisant la ligne de commande :
+contient des directives qui ne seront appliquées que si un paramètre approprié a
+été défini dans la ligne de commande de <program>httpd</program>. Par exemple,
+avec la configuration suivante, toutes les requêtes seront redirigées vers un
+autre site si le serveur est démarré en utilisant la ligne de commande :
<code>httpd -DClosedForNow</code> :</p>
<highlight language="config">
<p><directive type="section" module="core">IfDefine</directive>,
<directive type="section" module="core">IfModule</directive> et
<directive type="section" module="mod_version">IfVersion</directive>
-peuvent inverser leur test conditionnel en le faisant précéder d'un « ! ».
+peuvent inverser leur test conditionnel en le faisant précéder d'un « ! ».
De plus, ces sections peuvent être imbriquées afin de définir des restrictions
plus complexes.</p>
</section>
<p>Le conteneur <directive type="section" module="core">Location</directive>
n'a pas besoin de faire référence à un élément du système de fichiers.
À ce titre, l'exemple suivant montre comment faire correspondre une URL
-particulière à un gestionnaire interne du serveur HTTP Apache fourni par le module
+particulière à un gestionnaire interne fourni par le module
<module>mod_status</module>.
Il n'est pas nécessaire de trouver un fichier nommé <code>server-status</code>
dans le système de fichiers.</p>
<highlight language="config">
+# Un URL vers un gestionnaire interne :
<Location "/server-status">
SetHandler server-status
</Location>
+
+# Un chemin d’URL vers un dorsal de mandataire inverse :
+<Location "/app">
+ ProxyPass "http://backend.example.com/"
+ ProxyPassReverse "http://backend.example.com/"
+</Location>
+
+# Interdire l’accès à un chemin d’URL sans tenir compte de ce qui le traite :
+<Location "/private">
+ Require all denied
+</Location>
</highlight>
+
+<p>Étant donné que la section <directive type="section"
+module="core">Location</directive> opère sur des URLs, et non sur des chemins du
+système de fichiers, il s'agit du conteneur approprié pour la configuration du
+mandataire et les points de terminaison fournis par les modules.</p>
</section>
<section id="overlapping-webspace"><title>Espace web imbriqué</title>
de configuration.</li>
<li>Les sections <directive
type="section" module="core">Directory</directive> (groupe 1 ci-dessus)
- sont traitées dans l'ordre du répertoire le plus court vers le plus long.
+ sont traitées dans l'ordre du répertoire le plus court vers le plus long
+ (sans tenir compte de leur ordre d’apparition dans le fichier de
+ configuration).
Par exemple, <code><Directory "/var/web/dir"></code> sera
traitée avant <code><Directory
"/var/web/dir/subdir"></code>.</li>
- <li>Si plusieurs sections <directive
- type="section" module="core">Directory</directive> s'appliquent au même
- répertoire, elles sont traitées selon l'ordre dans lequel elles
- apparaissent dans le fichier de configuration.</li>
- <li>Les sections de configuration incluses à l'aide de la directive <directive
+ <li>Si plusieurs sections <directive type="section"
+ module="core">Directory</directive> s'appliquent au même répertoire, elles
+ sont traitées selon l'ordre dans lequel elles apparaissent dans le fichier
+ de configuration. La même règle s’applique lorsque plusieurs sections
+ <directive type="section" module="core">DirectoryMatch</directive>,
+ <directive type="section" module="core">Files</directive>, <directive
+ type="section" module="core">FilesMatch</directive>, <directive
+ type="section" module="core">Location</directive> ou <directive
+ type="section" module="core">LocationMatch</directive> ciblent à la même
+ ressource.</li>
+ <li>Les sections de configuration incluses à laide de la directive <directive
module="core">Include</directive> sont traitées comme si elles se
trouvaient réellement dans le fichier qui les inclut à la position de la
directive
module="core">VirtualHost</directive>
sont appliquées <em>après</em> les sections correspondantes situées en
dehors de la définition du serveur virtuel, ce qui permet au serveur virtuel
- de prévaloir sur la configuration du serveur global.</li>
+ de prévaloir sur la configuration du serveur global. Notez qu’à la
+ différence des autres types de section, un seul <directive type="section"
+ module="core">serveur virtuel</directive> est sélectionné pour une requête
+ — les directives de plusieurs serveurs virtuels correspondants ne sont
+ jamais fusionnées. Voir <a href="vhosts/details.html">Correspondance des
+ serveurs virtuels</a> pour des détails à propos de la manière dont les
+ serveurs virtuels sont sélectionnés.</li>
<li>Quand la requête est servie par le module <module>mod_proxy</module>,
le conteneur <directive module="mod_proxy" type="section">Proxy</directive>
prend la place du conteneur <directive module="core"
</li>
<li>Lorsqu'une section <directive type="section" module="core"
>If</directive> est utilisée dans un fichier <code>.htaccess</code>, les
- directives incluses dans un répertoire parent seront fusionnées
- <em>après</em> les directives non-incluses dans un sous-répertoire.
+ directives incluses dans un "directory" parent seront fusionnées
+ <em>après</em> les directives non-incluses dans un "directory" enfant.
</li>
+ <li><note type="warning"><title>Avertissement : une directive
+ <Limit> au sein d’une section <Location> peut accorder un
+ accès silencieusement</title>
+ <p>Utiliser la directive <directive type="section"
+ module="core">Limit</directive> au sein d’une section <directive
+ type="section" module="core">Location</directive> pour restreindre
+ la liste des méthodes HTTP autorisées peut donner des résultats
+ inattendus. Pour les méthodes non spécifiées par la directive <directive
+ type="section" module="core">Limit</directive>, la section <directive
+ type="section" module="core">Location</directive> hôte est traitée comme
+ n’imposant aucune condition d’autorisation, ce qui a effectivement pour
+ effet d’accorder l’accès et outrepasse toute éventuelle restriction
+ d’une section <directive type="section"
+ module="core">Directory</directive> qui, autrement, aurait dû s’appliquer.
+ C’est pourquoi il est préférable d’utiliser la directive <directive
+ type="section" module="core">LimitExcept</directive> ou de définir les
+ autorisations sans restriction sur les méthodes.</p>
+ </note></li>
</ul>
<note><title>Note technique</title>