Serveur Apache HTTP Version 2.2
Ce document concerne une version ancienne (2.2) du serveur HTTP Apache. La version actuelle est documentée ici. Si vous n'avez pas encore effectué la mise è jour, veuillez suivre ce lien pour plus d'informations.
Pour consulter la version actuelle de ce document, vous pouvez suivre ce lien.
Ce document décrit les fichiers utilisés pour configurer le Serveur HTTP Apache.
Modules Apparentés | Directives Apparentées |
---|---|
La configuration d'Apache est effectuée en plaçant des directives dans des fichiers de
configuration au format texte. Le fichier de configuration principal se nomme
en général
httpd.conf
. La localisation de ce fichier est définie
à la compilation, mais peut être redéfinie à l'aide de l'option
de ligne de commande -f
. En outre, d'autres fichiers de
configuration peuvent être ajoutés à l'aide de la directive
Include
, 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 Apache que lorsque le serveur
est démarré ou redémarré.
Le serveur lit aussi un fichier contenant les types de document mime;
ce fichier est défini par la directive TypesConfig
,
et se nomme mime.types
par défaut.
Les fichiers de configuration d'Apache 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. Il ne doit y avoir aucun caractère ni espace entre l'anti-slash et la fin de la ligne.
Les directives dans les fichiers de configuration ne sont pas sensibles à la casse, mais leurs arguments le sont souvent. Les lignes qui débutent par le caractère "#" sont interprétées comme des commentaires, et sont ignorées. Les commentaires ne doivent pas apparaître sur la même ligne qu'une directive de configuration. Les espaces précédant une directive sont ignorés; vous pouvez par conséquent indenter les directives afin d'améliorer la lisibilité. Les lignes vides sont aussi ignorées.
On peut utiliser les variables d'environnement du shell dans les
lignes du fichier de configuration en utilisant la syntaxe
${ENVVAR}
. Si "ENVVAR" est le nom d'une variable
d'environnement valide, sa valeur remplace l'expression
${ENVVAR}
dans la ligne du fichier de configuration, et
le traitement continue comme si cette valeur avait été inscrite
directement dans le fichier de configuration. Si la variable ENVVAR
n'est pas trouvée, l'expression "${ENVVAR}" est conservée tel quel
pour une utilisation ultérieure dans le traitement du fichier de
configuration.
La longueur maximale d'une ligne du fichier de configuration, après substitution des variables d'environnement, reconstitution des lignes fragmentées et suppression des espaces de début et de fin, est de 8192 caractères.
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
apachectl configtest
ou de l'option de ligne de commande
-t
.
Modules Apparentés | Directives Apparentées |
---|---|
Apache 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 modules qui peuvent être chargés dans Apache.
Par défaut, un jeu de modules de base est inclus dans le
serveur à la compilation. Si le serveur est compilé de façon à utiliser
les modules chargés dynamiquement,
alors les modules peuvent être compilés séparément et chargés à
n'importe quel moment à l'aide de la directive
LoadModule
.
Dans le cas contraire, Apache 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 <IfModule>
.
Pour voir quels modules ont été compilés avec le serveur,
vous pouvez utiliser l'option de ligne de commande -l
.
Modules Apparentés | Directives Apparentées |
---|---|
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
<Directory>
, <DirectoryMatch>
, <Files>
, <FilesMatch>
, <Location>
, ou <LocationMatch>
.
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.
Apache peut servir simultanément de nombreux sites web au travers des
Hôtes Virtuels. La portée des directives peut ainsi
être limitée en les plaçant dans des sections
<VirtualHost>
,
afin qu'elles ne s'appliquent qu'aux requêtes
pour un site web particulier.
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 principal. Pour déterminer quelles directives peuvent être placées dans quelles sections, consultez le Contexte de la directive. Pour plus d'informations, nous fournissons des détails dans Comment fonctionnent les sections Directory, Location et Files.
Modules Apparentés | Directives Apparentées |
---|---|
Apache permet la gestion décentralisée de la configuration
via des fichiers spéciaux placés dans l'arborescence du site web.
Ces fichiers spéciaux se nomment en général .htaccess
,
mais tout autre nom peut être spécifié à l'aide de la directive
AccessFileName
.
Les directives placées dans les fichiers .htaccess
s'appliquent au répertoire dans lequel vous avez placé le fichier,
ainsi qu'à tous ses sous-répertoires.
La syntaxe des fichiers .htaccess
est la même que celle
des fichiers de configuration principaux. Comme les fichiers
.htaccess
sont lus à chaque requête, les modifications de
ces fichiers prennent effet immédiatement.
Pour déterminer quelles directives peuvent être placées
dans les fichiers .htaccess
, consultez le
Contexte de la
directive. L'administrateur du serveur peut contrôler quelles
directives peuvent être placées dans les fichiers
.htaccess
en définissant la directive
AllowOverride
dans les fichiers de configuration principaux.
Pour plus d'informations sur les fichiers .htaccess
,
se référer au tutoriel .htaccess.