<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<!-- Traduction anglais 1.17 -->
<head>
<meta http-equiv="Content-Type" content=
"text/html; charset=iso-8859-1">
<title>Fichiers de configuration</title>
</head>
<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
<body bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink=
"#000080" alink="#FF0000">
<!--#include virtual="header.html" -->
<h1 align="CENTER">Fichiers de configuration</h1>

<ul>
<li><a href="#main">Principaux fichiers de configuration</a></li>
<li><a href="#syntax">Syntaxe des fichiers de
configuration</a></li>
<li><a href="#modules">Modules</a></li>
<li><a href="#scope">Portée des directives</a></li>
<li><a href="#htaccess">Fichiers .htaccess</a></li>
<li><a href="#logs">Fichiers de trace</a></li>
</ul>

<hr>
<h2><a name="main">Principaux fichiers de configuration</a></h2>

<table border="1">
<tr>
<td valign="top"><strong>Modules liés</strong><br>
<br>
<a href="mod/mod_mime.html">mod_mime</a><br>
</td>
<td valign="top"><strong>Directives liées</strong><br>
<br>
<a href="mod/core.html#accessconfig">AccessConfig</a><br>
<a href="mod/core.html#ifdefine">&lt;IfDefine&gt;</a><br>
<a href="mod/core.html#include">Include</a><br>
<a href="mod/core.html#resourceconfig">ResourceConfig</a><br>
<a href="mod/mod_mime.html#typesconfig">TypesConfig</a><br>
</td>
</tr>
</table>

<p>Apache se configure en plaçant des <a href=
"mod/directives.html">directives</a> dans des fichiers textes de
configuration. Le fichier de configuration principal est
généralement appelé <code>httpd.conf</code>.
L'emplacement de ce fichier est fixé à la
compilation, mais peut être redéfini en utilisant
l'option de ligne de commande <code>-f</code>. Certains sites
possèdent également des fichiers
<code>srm.conf</code> et <code>access.conf</code> pour des <a
href="http://www.apache.org/info/three-config-files.html">raisons
historiques</a>. De plus, d'autres fichiers de configuration
peuvent être ajoutés en utilisant la directive
<code><a href="mod/core.html#include">Include</a></code>. Les
directives peuvent être placées dans n'importe quel
fichier. Les modifications dans le fichier de configuration
principal ne sont prises en compte qu'au démarrage ou
au redémarrage d'Apache.</p>

<p>Une nouveauté de la version 1.3.13 d'Apache est la
possibilité qu'un fichier de configuration soit en fait un
répertoire. Dans ce cas, Apache lira tous les fichiers et
sous répertoires et les traitera comme fichiers de
configuration. Une utilisation possible de cette
fonctionnalité est de pouvoir ajouter des hôtes
virtuels en créant des fichiers de configuration pour
chaque hôte, et de les placer dans le répertoire de
configuration. Ainsi, vous pouvez ajouter ou retirer des
hôtes virtuels sans avoir à éditer de
fichiers, mais simplement en ajoutant ou supprimant un fichier.
Celà permet d'automatiser plus facilement ce genre de
traitement.</p>

<p>Le serveur lit également un fichier décrivant
les types de contenu MIME; le nom de ce fichier est
défini par la directive <a href=
"mod/mod_mime.html#typesconfig">TypesConfig</a> et est par
défaut <code>mime.types</code>.</p>

<hr>
<h2><a name="syntax">Syntaxe des fichiers de
configuration</a></h2>

<p>Les fichiers de configurations contiennent au plus une
directive par ligne. Le caractère &quot;\&quot; peut être
utilisé à la fin d'une ligne pour indiquer que la
directive se poursuit sur la ligne suivante. Il ne doit pas y
avoir d'autres caractère ou d'espace entre le
caractère &quot;\&quot; et la fin de la ligne.</p>

<p>Dans les fichiers de configuration, l'écriture des noms
des directives n'est pas sensible à la casse, mais les
arguments des directives le sont généralement. Les
lignes blanches et les espaces précédant une
directive sont ignorés. Les commentaires <strong>ne
doivent pas</strong> être inclus sur la même ligne
qu'une directive. Les lignes commençant par le
caractère dièse "#" sont traitées comme des
commentaires et sont ignorés; vous pouvez les utiliser
pour indenter les directives et rendre leur lecture plus
facile.</p>

<p>Vous pouvez vérifier la syntaxe de vos fichiers de
configuration en utilisant soit <code>apachectl configtest</code>
soit l'option de ligne de commande <code>-t</code>.</p>

<hr>
<h2><a name="modules">Modules</a></h2>

<table border="1">
<tr>
<td valign="top"><strong>Modules liés</strong><br>
<br>
<a href="mod/mod_so.html">mod_so</a><br>
</td>
<td valign="top"><strong>Directives liées</strong><br>
<br>
<a href="mod/core.html#addmodule">AddModule</a><br>
<a href="mod/core.html#clearmodulelist">ClearModuleList</a><br>
<a href="mod/core.html#ifmodule">&lt;IfModule&gt;</a><br>
<a href="mod/mod_so.html#loadmodule">LoadModule</a><br>
</td>
</tr>
</table>

<p>Apache est un serveur modulaire. Celà implique que seules les
fonctions de base sont incluses dans le noyau du serveur. Les
fonctionnalités plus avancées sont disponibles
grâce aux <a href="mod/index-bytype.html">modules</a> qui
peuvent être chargés dans Apache. Par défaut,
un ensemble de modules de <a href=
"mod/module-dict.html#Status">base</a> sont inclus à la
compilation. Si le serveur est compilé pour utiliser les
modules <a href="dso.html">dynamiquement chargés</a>,
alors les modules peuvent être compilés
séparément et ajouté à n'importe quel
moment en utilisant la directive <a href=
"mod/mod_so.html#loadmodule">LoadModule</a>. Sinon, Apache doit
être recompilé pour ajouter ou supprimer des
modules. Des directives de configuration peuvent être
incluses de manière conditionnelle en fonction de la
présence d'un module particulier en les entourant par un
bloc <a href="mod/core.html#ifmodule">&lt;IfModule&gt;</a>.</p>

<p>Pour savoir quels modules ont été compilés
dans le serveur, vous pouvez utiliser l'option de ligne de
commande <code>-l</code>.</p>

<hr>
<h2><a name="scope">Portée des directives</a></h2>

<table border="1">
<tr>
<td valign="top"><strong>Directives liées</strong><br>
<br>
<a href="mod/core.html#directory">&lt;Directory&gt;</a><br>
<a href=
"mod/core.html#directorymatch">&lt;DirectoryMatch&gt;</a><br>
<a href="mod/core.html#files">&lt;Files&gt;</a><br>
<a href="mod/core.html#filesmatch">&lt;FilesMatch&gt;</a><br>
<a href="mod/core.html#location">&lt;Location&gt;</a><br>
<a href=
"mod/core.html#locationmatch">&lt;LocationMatch&gt;</a><br>
<a href="mod/core.html#virtualhost">&lt;VirtualHost&gt;</a><br>
</td>
</tr>
</table>

<p>Les directives placées dans les principaux fichiers de
configuration s'appliquent à l'ensemble du serveur. Si
vous souhaitez modifier la configuration pour une partie
seulement du serveur, vous pouvez mettre en contexte vos
directives en les plaçant dans des sections <code><a href=
"mod/core.html#directory">&lt;Directory&gt;</a>, <a href=
"mod/core.html#directorymatch">&lt;DirectoryMatch&gt;</a>, <a
href="mod/core.html#files">&lt;Files&gt;</a>, <a href=
"mod/core.html#filesmatch">&lt;FilesMatch&gt;</a>, <a href=
"mod/core.html#location">&lt;Location&gt;</a>,</code> et <code><a
href=
"mod/core.html#locationmatch">&lt;LocationMatch&gt;</a></code> .
Ces sections limitent la portée d'application des
directives qu'elles contiennent à un emplacement des
fichiers ou à certaines URL. Elles peuvent être
imbriquées, permettant ainsi une configuration très
fine.</p>

<p>Apache a la possibilité de servir plusieurs sites web
simultanément. Cette possibilité est appelée
<a href="vhosts/">hébergement virtuel</a>. Des directives
peuvent également être limitées en utilisant
des sections <code><a href=
"mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code> afin
qu'elles ne s'appliquent qu'à certains sites web.</p>

<p>Bien que la plupart des directives peuvent être
placées à l'intérieur de n'importe quelle
section, certaines directives n'ont pas de sens dans certains
contextes. Par exemple, les directives contrôlant la
création des processus ne peuvent être placées
que dans le contexte pricipal du serveur. Pour savoir quelles
directives peuvent être placées dans quelles
sections, vérifiez le <a href=
"mod/directive-dict.html#Context">contexte</a> de la directive.
Pour plus d'informations, voir <a href="sections.html">comment
les sections Directory, Location et Files fonctionnent</a>.</p>

<hr>
<h2><a name="htaccess">Fichiers .htaccess</a></h2>

<table border="1">
<tr>
<td valign="top"><strong>Directives liées</strong><br>
<br>
<a href="mod/core.html#accessfilename">AccessFileName</a><br>
<a href="mod/core.html#allowoverride">AllowOverride</a><br>
</td>
</tr>
</table>

<p>Apache permet une gestion décentralisée de la
configuration par l'utilisation de fichiers spéciaux
à l'intérieur de l'arborescence web. Ces fichiers
spéciaux sont généralement appelés
<code>.htaccess</code>, mais n'importe quel nom peut être
défini par la directive <a href=
"mod/core.html#accessfilename"><code>AccessFileName</code></a>.
Les directives placées dans les fichiers
<code>.htaccess</code> s'appliquent au répertoire
où se trouve le fichier ainsi qu'aux sous
répertoires. Les fichiers <code>.htaccess</code>
respectent la même syntaxe que les fichiers principaux de
configuration. Comme les fichiers <code>.htaccess</code> sont lus
à chaque requête, Les modifications
effectuées dans ces fichiers prennent effet
immédiatement.</p>

<p>Pour savoir si une directive peut être placée
dans les fichiers <code>.htaccess</code>, vérifiez le <a
href="mod/directive-dict.html#Context">contexte</a> de la
directive. L'administrateur peut contôler quelles
directives peuvent être placées dans les fichiers
<code>.htaccess</code> en modifiant la directive <a href=
"mod/core.html#allowoverride"><code>AllowOverride</code></a> du
fichier principal de configuration.</p>

<hr>
<h2><a name="logs">Fichiers de trace</a></h2>

<h3>Avertissement sur la sécurité</h3>

Toute personne pouvant écrire dans le répertoire
où Apache écrit un fichier de trace peut avoir
accès à l'uid sous lequel le serveur est
lancé, généralement root. <em>Ne donnez
pas</em> accès en écriture au répertoire
où les fichiers de trace sont stockés sans
être clairement conscient des conséquences; voir le
document <a href="misc/security_tips.html">trucs sur la
sécurité</a> pour plus de détails. 

<h3>Fichier pid</h3>

<p>Au lancement, Apache écrit le numéro de
processus du processus père httpd dans le fichier
<code>logs/httpd.pid</code>. Le nom du fichier peut être
changé en modifiant la directive <a href=
"mod/core.html#pidfile">PidFile</a>. Le numéro de
processus est utilisé par l'administrateur pour relancer
et arrêter le démon. Sur Unix, un signal HUP ou USR1
a pour effet de faire relire par le démon les fichiers de
configuration, et un signal TERM le fait terminer de
manière douce. Sur Windows, il faut employer l'option -k.
Pour plus d'information voir la page <a href=
"stopping.html">Arrêt et redémarrage</a>.</p>

<p>Si le processus meurt (ou est tué) de manière
anormale, il peut alors être nécessaire de tuer les
processus fils.</p>

<h3>Trace des erreurs</h3>

<p>Le serveur trace les messages d'erreurs dans un fichier, par
défaut <code>logs/error_log</code> sur Unix ou
<code>logs/error.log</code> sur Windows and OS/2. Le nom du
fichier peut être défini en utilisant la directive
<a href="mod/core.html#errorlog">ErrorLog</a> D'autres traces
peuvent être définies pour différents <a
href="mod/core.html#virtualhost">hôtes virtuels</a>.</p>

<h3>Trace des requêtes</h3>

<p>Le serveur trace généralement chaque
requête dans un fichier de transfert, par défaut
<code>logs/access_log</code> sur Unix ou
<code>logs/access.log</code> sur Windows and OS/2. Le nom du
fichier peut être défini en utilisant la directive
<a href="mod/mod_log_config.html#customlog">CustomLog</a>.
D'autres traces peuvent être définies pour
différents <a href="mod/core.html#virtualhost">hôtes
virtuels</a>. <!--#include virtual="footer.html" -->
</p>
</body>
</html>

