| <?xml version="1.0" encoding="UTF-8" ?> | |
| <!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: 1933778 --> | |
| <!-- | |
| 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="configuring.xml.meta"> | |
| <title>Fichiers de configuration</title> | |
| <summary> | |
| <p>Ce document décrit les fichiers utilisés pour configurer | |
| le Serveur HTTP Apache.</p> | |
| </summary> | |
| <section id="main"> | |
| <title>Fichiers de configuration principaux</title> | |
| <related> | |
| <modulelist> | |
| <module>mod_mime</module> | |
| </modulelist> | |
| <directivelist> | |
| <directive module="core" type="section">IfDefine</directive> | |
| <directive module="core">Include</directive> | |
| <directive module="mod_mime">TypesConfig</directive> | |
| </directivelist> | |
| </related> | |
| <p>La configuration du serveur HTTP Apache est effectuée en plaçant des <a | |
| href="mod/directives.html">directives</a> dans des fichiers de | |
| configuration au format texte. Le fichier de configuration principal se nomme | |
| en général | |
| <code>httpd.conf</code>. La localisation de ce fichier est définie | |
| à la compilation, mais peut être redéfinie à l'aide de l'option | |
| de ligne de commande <code>-f</code>. En outre, d'autres fichiers de | |
| configuration peuvent être ajoutés à l'aide de la directive | |
| <directive module="core">Include</directive>, et des caractères de | |
| remplacement | |
| peuvent être utilisés pour inclure de nombreux fichiers de configuration. | |
| Des directives de tous types peuvent être placées dans chacun de ces fichiers | |
| de configuration. Les modifications dans les fichiers de configuration | |
| principaux ne sont prises en compte par httpd que lorsque le serveur | |
| est démarré ou redémarré.</p> | |
| <p>Le serveur lit aussi un fichier contenant les types de document mime ; | |
| ce fichier est défini par la directive <directive | |
| module="mod_mime">TypesConfig</directive>, | |
| et se nomme <code>mime.types</code> par défaut.</p> | |
| </section> | |
| <section id="syntax"> | |
| <title>Syntaxe des fichiers de configuration</title> | |
| <p>Les fichiers de configuration de httpd contiennent une directive par | |
| ligne. On peut utiliser l'anti-slash "\" comme dernier caractère d'une | |
| ligne pour indiquer que la directive continue à la ligne suivante ; pour que | |
| cette continuation soit prise en compte, il ne doit y avoir aucun caractère | |
| ni blanc entre l'anti-slash et la fin de la ligne.</p> | |
| <p>Les lignes qui commencent par un croisillon « # » sont interprétées comme | |
| des commentaires et sont ignorées. Les commentaires <strong>ne doivent | |
| pas</strong> se trouver sur la même ligne qu'une directive de configuration, | |
| y compris au début de la continuation d'une ligne comme décrit dans le | |
| paragraphe précédent. Les commentaires peuvent aussi continuer sur la ligne | |
| suivante, ce qui signifie que la prochaine ligne physique est aussi | |
| interprétée comme un commentaire car la ligne logique commence par un | |
| croisillon. | |
| </p> | |
| <p>Les blancs apparaissant avant une directive sont ignorés ; vous pouvez | |
| donc indenter ces dernières pour améliorer la lisibilité. Les lignes vides | |
| sont aussi ignorées. les arguments de directive sont séparés par des blancs. | |
| Si un argument contient des espaces, il doit être entouré de guillemets.</p> | |
| <section id="quotes"><title>Citation et échappement</title> | |
| <p>Un argument qui contient des espaces doit être entouré de guillemets | |
| doubles (<code>"</code>) ou de guillemets simples (<code>'</code>). Les | |
| guillemets eux-mêmes ne font pas partie de l’argument.</p> | |
| <p>À l’intérieur d’une chaîne entre guillemets, seules deux séquences | |
| d’échappement sont reconnues : <code>\\</code> produit une controblique | |
| littérale et <code>\"</code> (ou <code>\'</code> si la chaîne est entourée | |
| de guillemets simples) produit un guillemet littéral sans terminer la | |
| chaîne. Toutes les autres séquences avec controblique sont conservées telles | |
| quelles — par exemple, <code>\n</code> sera considéré comme une chaîne | |
| littéral de deux caractères <code>\n</code>, pas comme une nouvelle | |
| ligne.</p> | |
| <p>En dehors des guillemets, les controbliques n’ont aucune signification | |
| spéciale et sont traitées comme des caractères littéraux. La seule exception | |
| est la controblique de continuation de ligne en fin de ligne, comme décrit | |
| ci-avant.</p> | |
| <p>Notez que des chaînes entre guillemets adjacentes sans espace entre elles | |
| ne sont <strong>pas</strong> concaténées — elles sont traitées comme des | |
| arguments séparés. Par exemple :</p> | |
| <example> | |
| # Il ne s’agit pas d’un seul argument, mais de DEUX :<br /> | |
| Header set X-Foo "arg1""arg2" | |
| </example> | |
| <p>Certaines directives acceptent des arguments qui contiennent des | |
| sous-expressions ayant leur propre syntaxe, telles que les drapeaux de la | |
| directive <directive module="mod_rewrite">RewriteRule</directive> ou les | |
| expression <a href="expr.html">ap_expr</a>. Dans ces cas, l’interpréteur de | |
| fichier de configuration enlève tout d’abord les guillemets englobants et | |
| traite les séquences avec controblique comme décrit ci-avant, puis | |
| l’interpréteur propre à la directive traite le résultat. En cas de doute, | |
| utiliser des guillemets simples autour d’un argument qui contient des | |
| controbliques peut éviter un double traitement inattendu des séquenses | |
| d’échappement.</p> | |
| </section> | |
| <p>Les directives dans les fichiers de configuration ne sont pas | |
| sensibles à la casse, mais leurs arguments le sont souvent.</p> | |
| <p>Les valeurs des variables d'environnement ou des variables définies via | |
| la directive <directive module="core">Define</directive> peuvent être | |
| utilisées dans le fichier de configuration en utilisant la syntaxe | |
| <code>${VAR}</code>.<br /> Si "VAR" est le nom d'une variable valable, la | |
| valeur de la variable est alors substituée à la chaîne <code>${VAR}</code>, | |
| et le processus de lecture du fichier de configuration continue comme si la | |
| chaîne correspondant à la valeur de la variable s'y était trouvée | |
| littéralement.<br /> Les variables définies via la directive <directive | |
| module="core">Define</directive> l'emportent sur les autres variables | |
| d'environnement de l'interpréteur de commande.<br /> Si la variable "VAR" | |
| n'est pas trouvée, la chaîne <code>${VAR}</code> n'est pas modifiée, et un | |
| avertissement est enregistré dans le journal. Si par contre une valeur par | |
| défaut existe, on peut utiliser la forme conditionnelle <code>${VAR?=une | |
| valeur par défaut}</code>. Notez qu'une variable <strong>définie</strong> | |
| vide ne se verra pas attribuer la valeur par défaut et qu'une valeur par | |
| défaut vide comme dans <code>${VAR?=}</code> est une substitution valable | |
| (qui génère une valeur vide si "VAR" n'est pas définie, mais aucun | |
| avertissement).<br /> | |
| Le caractère ":" est interdit dans les noms de variables | |
| afin d'éviter tout conflit avec la syntaxe de la directive <directive | |
| module="mod_rewrite">RewriteMap</directive>.</p> | |
| <p>Seules les variables d'environnement de l'interpréteur de commande | |
| définies avant le démarrage du serveur peuvent être utilisées en extension. | |
| Les variables d'environnement définies dans le fichier de configuration | |
| lui-même, par exemple avec <directive module="mod_env">SetEnv</directive>, | |
| prennent effet trop tard pour pouvoir être utilisées en extension au sein du | |
| fichier de configuration.</p> | |
| <p>La longueur maximale d'une ligne dans un fichier de configuration | |
| normal, après substitution des variables et fusion des lignes | |
| interrompues, est approximativement de 16 Mo. Dans les <a | |
| href="configuring.html#htaccess">fichiers .htaccess</a>, la longueur | |
| maximale est de 8190 caractères.</p> | |
| <p>Vous pouvez vérifier l'absence d'erreurs de syntaxe dans vos fichiers | |
| de configuration sans démarrer le serveur à l'aide de la commande | |
| <code>apachectl configtest</code> ou de l'option de ligne de commande | |
| <code>-t</code>.</p> | |
| <p>Vous pouvez utiliser la définition <code>-DDUMP_CONFIG</code> de | |
| <module>mod_info</module> pour afficher la configuration avec tous | |
| les fichiers inclus et les variables d'environnement évaluées, tous | |
| les commentaires et les sections <directive module="core" | |
| type="section">IfDefine</directive> et <directive module="core" | |
| type="section">IfModule</directive> non actives ayant | |
| été supprimés. Cependant, la sortie ne reflète | |
| pas les fusions ou écrasements pouvant intervenir en cas de | |
| définitions multiples de directives.</p> | |
| </section> | |
| <section id="modules"> | |
| <title>Modules</title> | |
| <related> | |
| <modulelist> | |
| <module>mod_so</module> | |
| </modulelist> | |
| <directivelist> | |
| <directive module="core" type="section">IfModule</directive> | |
| <directive module="mod_so">LoadModule</directive> | |
| </directivelist> | |
| </related> | |
| <p>httpd est un serveur modulaire. Ceci implique que seules les | |
| fonctionnalités les plus courantes sont incluses dans le serveur de base. | |
| Les fonctionnalités étendues sont fournies à l'aide de <a | |
| href="mod/">modules</a> qui peuvent être chargés dans httpd. | |
| Par défaut, un jeu de <a | |
| href="mod/module-dict.html#Status">modules de base</a> est inclus dans le | |
| serveur à la compilation. Si le serveur est compilé de façon à utiliser | |
| les <a href="dso.html">modules chargés dynamiquement</a>, | |
| alors les modules peuvent être compilés séparément et chargés à | |
| n'importe quel moment à l'aide de la directive | |
| <directive module="mod_so">LoadModule</directive>. | |
| Dans le cas contraire, httpd doit être recompilé pour ajouter ou | |
| supprimer des modules. | |
| Les directives de configuration peuvent être incluses de manière | |
| conditionnelle selon la présence ou l'absence d'un module particulier | |
| en les plaçant dans un bloc <directive | |
| module="core" type="section">IfModule</directive>.</p> | |
| <p>Pour voir quels modules ont été compilés avec le serveur, | |
| vous pouvez utiliser l'option de ligne de commande <code>-l</code>.</p> | |
| </section> | |
| <section id="scope"> | |
| <title>Portée des directives</title> | |
| <related> | |
| <directivelist> | |
| <directive module="core" type="section">Directory</directive> | |
| <directive module="core" type="section">DirectoryMatch</directive> | |
| <directive module="core" type="section">Files</directive> | |
| <directive module="core" type="section">FilesMatch</directive> | |
| <directive module="core" type="section">Location</directive> | |
| <directive module="core" type="section">LocationMatch</directive> | |
| <directive module="core" type="section">VirtualHost</directive> | |
| </directivelist> | |
| </related> | |
| <p>Les directives placées dans les fichiers de configuration principaux | |
| s'appliquent au serveur dans son ensemble. Si vous souhaitez modifier la | |
| configuration d'une partie du serveur seulement, vous pouvez limiter la | |
| portée de vos directives en les plaçant dans une section | |
| <directive module="core" | |
| type="section">Directory</directive>, <directive module="core" | |
| type="section">DirectoryMatch</directive>, <directive module="core" | |
| type="section">Files</directive>, <directive module="core" | |
| type="section">FilesMatch</directive>, <directive module="core" | |
| type="section">Location</directive> ou <directive module="core" | |
| type="section">LocationMatch</directive>. | |
| Ces sections limitent le champ d'application des directives qu'elles | |
| contiennent à des URls ou des portions du système de fichiers particulières. | |
| Elles peuvent aussi être imbriquées, ce qui permet | |
| une configuration très fine.</p> | |
| <p>httpd peut servir simultanément de nombreux sites web au travers des <a | |
| href="vhosts/">Serveurs Virtuels</a>. La portée des directives peut ainsi | |
| être limitée en les plaçant dans des sections <directive module="core" | |
| type="section">VirtualHost</directive>, afin qu'elles ne s'appliquent qu'aux | |
| requêtes pour un site web particulier.</p> | |
| <p>Bien que la plupart des directives puissent être placées dans | |
| chacune de ces sections, certaines d'entre elles n'ont aucun sens | |
| dans certains contextes. | |
| Par exemple, les directives qui contrôlent la création des processus | |
| n'ont de sens que dans le contexte du serveur global. Pour déterminer | |
| quelles directives peuvent être placées dans quelles sections, consultez | |
| le <a href="mod/directive-dict.html#Context">Contexte</a> de la | |
| directive. Pour plus d'informations, nous fournissons des détails dans | |
| <a href="sections.html">Comment fonctionnent les sections Directory, | |
| Location et Files</a>.</p> | |
| </section> | |
| <section id="htaccess"> | |
| <title>Fichiers .htaccess</title> | |
| <related> | |
| <directivelist> | |
| <directive module="core">AccessFileName</directive> | |
| <directive module="core">AllowOverride</directive> | |
| </directivelist> | |
| </related> | |
| <p>httpd permet la gestion décentralisée de la configuration | |
| à l'aide de fichiers spéciaux placés dans l'arborescence du site web. | |
| Ces fichiers spéciaux se nomment en général <code>.htaccess</code>, | |
| mais tout autre nom peut être spécifié à l'aide de la directive | |
| <directive module="core">AccessFileName</directive>. | |
| Les directives placées dans les fichiers <code>.htaccess</code> | |
| s'appliquent au répertoire dans lequel vous avez placé le fichier, | |
| ainsi qu'à tous ses sous-répertoires. | |
| La syntaxe des fichiers <code>.htaccess</code> est la même que celle | |
| des fichiers de configuration principaux. Comme les fichiers | |
| <code>.htaccess</code> sont lus à chaque requête, les modifications de | |
| ces fichiers prennent effet immédiatement.</p> | |
| <p>Pour déterminer quelles directives peuvent être placées | |
| dans les fichiers <code>.htaccess</code>, consultez le | |
| <a href="mod/directive-dict.html#Context">Contexte</a> de la | |
| directive. L'administrateur du serveur peut contrôler quelles | |
| directives peuvent être placées dans les fichiers | |
| <code>.htaccess</code> en définissant la directive | |
| <directive module="core">AllowOverride</directive> | |
| dans les fichiers de configuration principaux.</p> | |
| <p>Pour plus d'informations sur les fichiers <code>.htaccess</code>, | |
| se référer au <a href="howto/htaccess.html">tutoriel .htaccess</a>.</p> | |
| </section> | |
| </manualpage> |