diff options
author | Vincent Deffontaines <gryzor@apache.org> | 2008-10-26 17:38:53 +0100 |
---|---|---|
committer | Vincent Deffontaines <gryzor@apache.org> | 2008-10-26 17:38:53 +0100 |
commit | 391e0a19779b399d42a55dfcd5a2823fdbc044ef (patch) | |
tree | a40487bbcaf1828c9cfbd2ef0c07e5c7d131bb8c /docs/manual/sections.xml.fr | |
parent | New french translations. (diff) | |
download | apache2-391e0a19779b399d42a55dfcd5a2823fdbc044ef.tar.xz apache2-391e0a19779b399d42a55dfcd5a2823fdbc044ef.zip |
Adding .fr translations for suexec logs server-wide sections new_features_2_4 urlmapping dso upgrading glossary
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@708014 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'docs/manual/sections.xml.fr')
-rw-r--r-- | docs/manual/sections.xml.fr | 564 |
1 files changed, 564 insertions, 0 deletions
diff --git a/docs/manual/sections.xml.fr b/docs/manual/sections.xml.fr new file mode 100644 index 0000000000..920448cf9c --- /dev/null +++ b/docs/manual/sections.xml.fr @@ -0,0 +1,564 @@ +<?xml version="1.0" encoding="ISO-8859-1" ?> +<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd"> +<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?> +<!-- French translation : Lucien GENTIS --> +<!-- Reviewed by : Vincent Deffontaines --> +<!-- English Revision: 420990 --> + +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<manualpage metafile="sections.xml.meta"> + +<title>Sections de configuration</title> + +<summary> <p>Les directives des <a +href="configuring.html">fichiers de configuration</a> peuvent s'appliquer +au serveur dans son ensemble, ou seulement à des répertoires, fichiers, hôtes, +ou URLs particuliers. Ce document décrit comment utiliser les conteneurs de +sections de configuration ou les fichiers <code>.htaccess</code> pour +modifier la portée des directives de configuration.</p> +</summary> + +<section id="types"><title>Types de conteneurs de sections de +configuration</title> + +<related> +<modulelist> +<module>core</module> +<module>mod_version</module> +<module>mod_proxy</module> +</modulelist> +<directivelist> +<directive type="section" module="core">Directory</directive> +<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">IfDefine</directive> +<directive type="section" module="core">IfModule</directive> +<directive type="section" module="mod_version">IfVersion</directive> +<directive type="section" module="core">Location</directive> +<directive type="section" module="core">LocationMatch</directive> +<directive type="section" module="mod_proxy">Proxy</directive> +<directive type="section" module="mod_proxy">ProxyMatch</directive> +<directive type="section" module="core">VirtualHost</directive> +</directivelist> +</related> + +<p>Il existe deux grands types de conteneurs. La plupart des conteneurs sont +évalués pour chaque requête. Les directives qu'ils contiennent s'appliquent +seulement aux requêtes qui sont concernées par le conteneur. En revanche, +les conteneurs +<directive type="section" module="core">IfDefine</directive>, <directive +type="section" module="core">IfModule</directive>, et +<directive type="section" module="mod_version">IfVersion</directive> sont +évalués seulement au démarrage et au redémarrage du serveur. +Si leurs conditions sont vérifiées au démarrage, les directives qu'ils contiennent +s'appliqueront à toutes les requêtes. Si leurs conditions ne sont pas vérifiées, les +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 : +<code>httpd -DClosedForNow</code>:</p> + +<example> +<IfDefine ClosedForNow><br /> +Redirect / http://otherserver.example.com/<br /> +</IfDefine> +</example> + +<p>Le conteneur <directive type="section" module="core">IfModule</directive> +est similaire; les directives qu'il contient ne s'appliqueront que si +un module particulier est disponible au niveau du serveur. +Le module doit être soit compilé statiquement dans le serveur, soit +dynamiquement et dans ce cas, la ligne <directive +module="mod_so">LoadModule</directive> correspondante doit apparaître +plus haut dans le fichier de configuration. Ce conteneur ne doit être +utilisé que dans le cas où votre fichier de configuration doit fonctionner +indépendamment de la présence ou de l'absence de certains modules. +Il ne doit pas contenir de directives que vous souhaitez voir s'appliquer +systématiquement, car vous pouvez perdre ainsi de précieux messages d'erreur +à propos de modules manquants.</p> + +<p>Dans l'exemple suivant, la directive <directive +module="mod_mime_magic">MimeMagicFiles</directive> ne s'appliquera que si le +module <module>mod_mime_magic</module> est disponible.</p> + +<example> +<IfModule mod_mime_magic.c><br /> +MimeMagicFile conf/magic<br /> +</IfModule> +</example> + +<p>Le conteneur +<directive type="section" module="mod_version">IfVersion</directive> +est similaire aux conteneurs <directive type="section" +module="core">IfDefine</directive> et <directive type="section" +module="core">IfModule</directive>; les directives qu'il contient ne +s'appliqueront que si une version particulière du serveur s'exécute. Ce +conteneur a été conçu pour une utilisation dans les suites de tests +et les grands réseaux qui doivent prendre en compte différentes versions +et configurations de httpd.</p> + +<example> + <IfVersion >= 2.1><br /> + <indent> + # les directives situées ici ne s'appliquent que si la version <br /> + # est supérieure ou égale à 2.1.0.<br /> + </indent> + </IfVersion> +</example> + +<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 "!". +De plus, ces sections peuvent être imbriquées afin de définir des restrictions +plus complexes.</p> +</section> + +<section id="file-and-web"><title>Système de fichiers et +arborescence du site web</title> + +<p>Les conteneurs de sections de configuration les plus couramment utilisés +sont ceux qui modifient la configuration de points particuliers du système de +fichiers ou de l'arborescence du site web. Tout d'abord, il est important de +comprendre la différence entre les deux. Le système de fichiers est une vue +de vos disques tels qu'ils sont perçus par votre système d'exploitation. +Par exemple, avec une installation par défaut, +Apache est situé dans <code>/usr/local/apache2</code> pour le système de +fichiers UNIX, ou <code>"c:/Program Files/Apache Group/Apache2"</code> pour +le système de fichiers Windows. (Notez que des slashes directs doivent +toujours être utilisés comme séparateur de chemin dans Apache, même sous +Windows.) Quant à +l'arborescence du site web, il s'agit d'une vue de votre site +tel que présenté par le +serveur web et perçue par le client. Ainsi le chemin <code>/dir/</code> dans +l'arborescence du site web correspond au chemin +<code>/usr/local/apache2/htdocs/dir/</code> dans le système de fichiers pour +une installation d'Apache par défaut sous UNIX. +En outre, l'arborescence du site web n'a pas besoin de correspondre en permanence au +système de fichiers, car les pages web peuvent être générées dynamiquement +à partir de bases de données ou d'autres emplacements.</p> + +<section id="filesystem"><title>Conteneurs de système de fichiers</title> + +<p>Les conteneurs <directive type="section" module="core">Directory</directive> +et <directive type="section" module="core">Files</directive>, +ainsi que leurs équivalents acceptant les +<glossary ref="regex">expressions rationnelles</glossary>, +appliquent des directives à certaines parties du système de fichiers. +Les directives contenues dans une section <directive +type="section" module="core">Directory</directive> s'appliquent au répertoire +précisé, ainsi qu'à tous ses sous-répertoires. +Le même effet peut être obtenu en utilisant les <a +href="howto/htaccess.html">fichiers .htaccess</a>. Par exemple, avec la +configuration suivante, l'indexation sera activée pour le répertoire +<code>/var/web/dir1</code> et tous ses sous-répertoires.</p> + +<example> +<Directory /var/web/dir1><br /> +Options +Indexes<br /> +</Directory> +</example> + +<p>Les directives contenues dans une section <directive type="section" +module="core">Files</directive> s'appliquent à tout fichier +avec le nom spécifié, quel que soit le répertoire dans lequel il se trouve. +Ainsi par exemple, les directives de configuration suivantes, si elles sont +placées dans la section principale du fichier de configuration, vont interdire +l'accès à tout fichier nommé <code>private.html</code> quel que soit +l'endroit où il se trouve.</p> + +<example> +<Files private.html><br /> +Order allow,deny<br /> +Deny from all<br /> +</Files> +</example> + +<p>Pour faire référence à des fichiers qui se trouvent en des points +particuliers du système de fichiers, les sections +<directive type="section" module="core">Files</directive> et +<directive type="section" module="core">Directory</directive> +peuvent être combinées. Par exemple, la configuration suivante va interdire +l'accès à <code>/var/web/dir1/private.html</code>, +<code>/var/web/dir1/subdir2/private.html</code>, +<code>/var/web/dir1/subdir3/private.html</code>, ainsi que toute instance de +<code>private.html</code> qui se trouve dans l'arborescence +<code>/var/web/dir1/</code>.</p> + +<example> +<Directory /var/web/dir1><br /> +<Files private.html><br /> +Order allow,deny<br /> +Deny from all<br /> +</Files><br /> +</Directory> +</example> +</section> + +<section id="webspace"><title>Conteneurs de l'arborescence du site web</title> + +<p>le conteneur <directive type="section" module="core">Location</directive> +et son équivalent acceptant les +<glossary ref="regex">expressions rationnelles</glossary>, modifient quant à eux la +configuration de parties de l'arborescence du site web. Par exemple, la +configuration suivante interdit l'accès à toute URL dont la partie chemin +commence par /private. +En particulier, l'interdiction s'appliquera aux requêtes pour : +<code>http://yoursite.example.com/private</code>, +<code>http://yoursite.example.com/private123</code>, et +<code>http://yoursite.example.com/private/dir/file.html</code> ainsi qu'à +toute requête commençant par la chaîne de caractères <code>/private</code>.</p> + +<example> +<Location /private><br /> +Order Allow,Deny<br /> +Deny from all<br /> +</Location> +</example> + +<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. +Par exemple, l'exemple suivant montre comment faire référence à une URL +particulière vers un gestionnaire interne d'Apache 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> + +<example> +<Location /server-status><br /> +SetHandler server-status<br /> +</Location> +</example> +</section> + +<section id="wildcards"><title>Caractères de remplacement +et expressions rationnelles</title> + +<p>Les conteneurs +<directive type="section" module="core">Directory</directive>, +<directive type="section" module="core">Files</directive>, et +<directive type="section" module="core">Location</directive> +peuvent utiliser des caractères de remplacement de style shell comme dans +la fonction <code>fnmatch</code> de la bibliothèque C standard. +Le caractère "*" +correspond à toute séquence de caractères, "?" à un caractère seul, +et "[<em>seq</em>]" à tout caractère contenu dans <em>seq</em>. +Le caractère "/" +ne peut pas faire l'objet d'un remplacement; +il doit être spécifié explicitement.</p> + +<p>Si une définition des critères de correspondance +encore plus souple est nécessaire, chaque conteneur +possède son équivalent acceptant les expressions rationnelles : <directive +type="section" module="core">DirectoryMatch</directive>, <directive +type="section" module="core">FilesMatch</directive>, et <directive +type="section" module="core">LocationMatch</directive> acceptent les +<glossary ref="regex">expressions rationnelles</glossary> compatibles Perl +pour définir les critères de correspondance. Mais voyez plus loin la section +à propos de la combinaison des sections de configuration +pour comprendre comment l'utilisation de +conteneurs avec des expressions rationnelles va modifier la manière +dont les directives sont appliquées.</p> + +<p>Un conteneur qui modifie la configuration de tous les +répertoires utilisateurs à l'aide de caractères de remplacement +mais sans utiliser +les expressions rationnelles pourrait ressembler à ceci :</p> + +<example> +<Directory /home/*/public_html><br /> +Options Indexes<br /> +</Directory> +</example> + +<p>Avec les conteneurs utilisant les expressions rationnelles, +on peut interdire l'accès à de nombreux types de fichiers d'images +simultanément :</p> +<example> +<FilesMatch \.(?i:gif|jpe?g|png)$><br /> +Order allow,deny<br /> +Deny from all<br /> +</FilesMatch> +</example> + +</section> + +<section id="whichwhen"><title>Que faut-il utiliser et quand ?</title> + +<p>Choisir entre des conteneurs de système de fichiers et des conteneurs +d'arborescence du site web est vraiment très simple. +Pour appliquer des directives à des objets qui résident dans le système de +fichiers, utilisez toujours un conteneur <directive type="section" +module="core">Directory</directive> ou <directive type="section" +module="core">Files</directive>. Pour appliquer des directives à des objets +qui ne résident pas dans le système de fichiers (comme une page web générée +par une base de données), utilisez un conteneur <directive type="section" +module="core">Location</directive>.</p> + +<p>Il ne faut jamais utiliser un conteneur <directive type="section" +module="core">Location</directive> pour restreindre l'accès à des +objets du système de fichiers, car plusieurs localisations de +l'arborescence du site web (URLs) peuvent correspondre à la même localisation +du système de fichier, ce qui peut permettre de contourner vos restrictions. +Par exemple, imaginez la configuration suivante :</p> + +<example> +<Location /dir/><br /> +Order allow,deny<br /> +Deny from all<br /> +</Location> +</example> + +<p>Elle fonctionne correctement si la requête appelle +<code>http://yoursite.example.com/dir/</code>. Mais que va-t-il se passer si +votre système de fichiers est insensible à la casse ? +Votre restriction va pouvoir être tout simplement contournée en envoyant une +requête sur +<code>http://yoursite.example.com/DIR/</code>. Le conteneur <directive +type="section" module="core">Directory</directive>, quant à lui, s'appliquera +à tout contenu servi à partir de cette localisation, +sans tenir compte de la manière dont il est appelé. +(Les liens du système de fichiers constituent une exception. +Le même répertoire peut être placé dans plusieurs parties du système de +fichiers en utilisant des liens symboliques. Le conteneur +<directive type="section" module="core">Directory</directive> va suivre le +lien symbolique sans modifier le nom du chemin. Par conséquent, pour plus de +sécurité, les liens symboliques doivent être désactivés à l'aide de la +directive +<directive module="core">Options</directive> appropriée.)</p> + +<p>Si vous pensez que vous n'êtes pas concerné par ce problème +parceque vous utilisez un système de fichiers sensible à la casse, +gardez à l'esprit qu'il y a de nombreuses autres manières pour faire +correspondre plusieurs localisations de l'arborescence du site web à la même +localisation du système de fichiers. C'est pourquoi vous devez autant que +possible toujours utiliser les conteneurs de système de fichiers. +Il y a cependant une exception à cette règle. Placer des restrictions de +configuration dans un conteneur <code><Location +/></code> est tout à fait sans rique car ce conteneur va s'appliquer à +toutes les requêtes sans tenir compte de l'URL spécifique.</p> +</section> + +</section> + +<section id="virtualhost"><title>Hôtes virtuels</title> + +<p>Le conteneur <directive type="section" module="core">VirtualHost</directive> +contient des directives qui s'appliquent à des hôtes spécifiques. +Ceci s'avère utile pour servir des hôtes multiples à partir de la même machine, +chacun d'entre eux possédant une configuration différente. Pour de plus amples +informations, +voir la <a href="vhosts/">Documentation sur les hôtes virtuels</a>.</p> +</section> + +<section id="proxy"><title>Mandataire</title> + +<p>Les conteneurs +<directive type="section" module="mod_proxy">Proxy</directive> +et <directive type="section" module="mod_proxy">ProxyMatch</directive> +appliquent les directives de configuration qu'ils contiennent uniquement aux +sites qui correspondent à l'URL spécifiée et auxquels on a +accédé via le serveur mandataire du module <module>mod_proxy</module>. +Par exemple, la configuration suivante +va interdire l'utilisation du serveur proxy pour accéder au site +<code>cnn.com</code>.</p> + +<example> +<Proxy http://cnn.com/*><br /> +Order allow,deny<br /> +Deny from all<br /> +</Proxy> +</example> +</section> + +<section id="whatwhere"><title>Quelles sont les directives autorisées ?</title> + +<p>Pour déterminer quelles sont les directives autorisées pour tel type de +section de configuration, vérifiez le <a +href="mod/directive-dict.html#Context">Contexte</a> de la directive. +Tout ce qui est autorisé dans les sections +<directive type="section" module="core">Directory</directive> +l'est aussi d'un point de vue syntaxique dans les 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>, +<directive type="section" module="core">LocationMatch</directive>, +<directive type="section" module="mod_proxy">Proxy</directive>, +et <directive type="section" module="mod_proxy">ProxyMatch</directive>. +Il y a cependant quelques exceptions :</p> + +<ul> +<li>La directive <directive module="core">AllowOverride</directive> +ne fonctionne que dans les sections +<directive type="section" module="core">Directory</directive>.</li> + +<li>Les <directive +module="core">Options</directive> <code>FollowSymLinks</code> et +<code>SymLinksIfOwnerMatch</code> ne fonctionnent que dans les sections +<directive type="section" module="core">Directory</directive> ou les fichiers +<code>.htaccess</code>.</li> + +<li>La directive <directive module="core">Options</directive> ne peut pas être +utilisée dans les sections +<directive type="section" module="core">Files</directive> +et <directive type="section" module="core">FilesMatch</directive>.</li> +</ul> +</section> + +<section id="mergin"><title>Comment les sections sont combinées entre elles</title> + +<p>Les sections de configuration sont appliquées dans un ordre très particulier. +Il est important de savoir comment cet ordre est défini car il peut avoir +des effets importants sur la manière dont les directives de configuration +sont interprétées.</p> + + <p>L'ordre dans lequel les sections sont combinées est :</p> + + <ol> + <li> Les sections <directive type="section" + module="core">Directory</directive> (à l'exception des + expressions rationnelles) + et les fichiers <code>.htaccess</code> sont appliqués simultanément (avec + la possibilité pour <code>.htaccess</code>, s'il y est autorisé, de + prévaloir sur + <directive type="section" module="core">Directory</directive>)</li> + + <li>Les sections + <directive type="section" module="core">DirectoryMatch</directive> + (et <code><Directory ~></code>)</li> + + <li>Les sections <directive type="section" + module="core">Files</directive> et <directive + type="section" module="core">FilesMatch</directive> sont appliquées + simultanément</li> + + <li>Les sections + <directive type="section" module="core">Location</directive> + et <directive type="section" + module="core">LocationMatch</directive> sont appliquées + simultanément</li> + </ol> + + <p>Mises à part les sections <directive type="section" + module="core">Directory</directive>, chaque groupe est traité selon + l'ordre dans lequel il apparaît dans les fichiers de configuration. + 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. + Par exemple, <code><Directory /var/web/dir></code> sera + traité avant <code><Directory + /var/web/dir/subdir></code>. 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. + Les sections de configuration incluses via 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 + <directive module="core">Include</directive>.</p> + + <p>Les sections situées à l'intérieur de sections <directive type="section" + module="core">VirtualHost</directive> + sont appliquées <em>après</em> les sections correspondantes situées en + dehors de la définition de l'hôte virtuel, ce qui permet à l'hôte virtuel + de prévaloir sur la configuration du serveur principal.</p> + + <p>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" + type="section">Directory</directive> dans l'ordre de traitement.</p> + + <p>Les sections situées plus loin dans le fichier de configuration prévalent + sur celles qui les précèdent.</p> + +<note><title>Note technique</title> + Une séquence + <code><Location></code>/<code><LocationMatch></code> + est réellement traitée juste avant la phase de traduction du nom + (où <code>Aliases</code> et <code>DocumentRoots</code> + sont utilisés pour faire correspondre les URLs aux noms de fichiers). + Les effets de cette séquence disparaissent totalement lorsque + la traduction est terminée. +</note> + +<section id="merge-examples"><title>Quelques exemples</title> + +<p>Voici un exemple imaginaire qui montre l'ordre de combinaison des sections. +En supposant qu'elles s'appliquent toutes à la requête, les directives de +cet exemple seront appliquées dans l'ordre suivant : A > B > C > D > +E.</p> + +<example> +<Location /><br /> +E<br /> +</Location><br /> +<br /> +<Files f.html><br /> +D<br /> +</Files><br /> +<br /> +<VirtualHost *><br /> +<Directory /a/b><br /> +B<br /> +</Directory><br /> +</VirtualHost><br /> +<br /> +<DirectoryMatch "^.*b$"><br /> +C<br /> +</DirectoryMatch><br /> +<br /> +<Directory /a/b><br /> +A<br /> +</Directory><br /> +<br /> +</example> + +<p>Pour un exemple plus concret, considérez ce qui suit. Sans tenir compte +de toute restriction d'accès placée dans les sections <directive module="core" +type="section">Directory</directive>, la section <directive +module="core" type="section">Location</directive> sera +évaluée en dernier et permettra un accès au serveur sans aucune restriction. +En d'autres termes, l'ordre de la combinaison des sections est important, +soyez donc prudent !</p> + +<example> +<Location /><br /> +Order deny,allow<br /> +Allow from all<br /> +</Location><br /> +<br />:if expand("%") == ""|browse confirm w|else|confirm w|endif + +# Arrghs! Cette section <Directory> n'aura aucun effet<br /> +<Directory /><br /> +Order allow,deny<br /> +Allow from all<br /> +Deny from badguy.example.com<br /> +</Directory> +</example> + +</section> + +</section> +</manualpage> |