Chapitre 10. Serveur HTTP Apache

Le Serveur HTTP Apache est un serveur Web Open Source robuste de niveau commercial qui a été développé par Apache Software Foundation (http://www.apache.org/). Red Hat Enterprise Linux comprend le Serveur HTTP Apache version 2.0 ainsi que de nombreux modules de serveur conçus pour améliorer sa fonctionnalité.

Le fichier de configuration par défaut installé avec le Serveur HTTP Apache fonctionne dans la plupart des situations sans devoir être modifié. Ce chapitre décrit brièvement de nombreuses directives trouvées dans son fichier de configuration (/etc/httpd/conf/httpd.conf) pour aider les utilisateurs nécessitant une configuration personnalisée ou devant convertir un fichier de configuration dans l'ancien format 1.3 du Serveur HTTP Apache.

AvertissementAvertissement
 

Si vous utilisez l'outil graphique Outil de configuration HTTP (redhat-config-httpd), n'éditez pas manuellement fichier de configuration du Serveur HTTP Apache car l'Outil de configuration HTTP crée une nouvelle version de ce fichier chaque fois qu'il est utilisé.

Pour obtenir plus d'informations concernant l'Outil de configuration HTTP, consultez le chapitre intitulé Configuration du Serveur HTTP Apache du Guide d'administration système de Red Hat Enterprise Linux.

10.1. Serveur HTTP Apache 2.0

Il existe des différences importantes entre la version 2.0 et la version 1.3 du Serveur HTTP Apache (version 1.3 fournie avec la version 7.3 de Red Hat Linux et les versions précédentes). Cette section passe en revue quelques-unes des nouvelles fonctions du Serveur HTTP Apache 2.0 et présente des changements importants. Pour obtenir des informations sur la migration d'un fichier de configuration version 1.3 vers le format 2.0, reportez-vous à la Section 10.2.

10.1.1. Fonctions du Serveur HTTP Apache 2.0

Le Serveur HTTP Apache 2.0 apporte bon nombre de nouvelles fonctions, parmi lesquelles :

  • Nouvelle API Apache — Les modules utilisent un nouvel ensemble d'interfaces de programmation d'applications (ou API de l'anglais 'Application Programming Interfaces').

    ImportantImportant
     

    Les modules élaborés pour le Serveur HTTP Apache 1.3 ne fonctionneront pas s'ils ne sont pas portés vers la nouvelle API. Si vous ne savez pas si un module particulier a été porté ou non, consultez le développeur avant la mise à niveau.

  • Filtrage — Les modules peuvent jouer le rôle de filtres de contenu. Reportez-vous à la Section 10.2.4 pour en savoir plus sur le fonctionnement du filtrage.

  • Prise en charge IPv6 — L'adressage IP de nouvelle génération est désormais pris en charge.

  • Directives simplifiées — Bon nombre de directives complexes ont été supprimées, et d'autres ont été simplifiées. Reportez-vous à la Section 10.5 pour plus d'informations sur des directives spécifiques.

  • Réponses multilingues aux erreurs — Lors de l'utilisation de documents 'Server Side Include' (SSI), des pages de réponse en cas d'erreur personnalisées peuvent être proposées dans plusieurs langues.

  • Prise en charge multi-protocoles — De nombreux protocoles sont pris en charge.

Vous trouverez une liste plus complète des changements en ligne à l'adresse http://httpd.apache.org/docs-2.0/.

10.1.2. Changements de paquetage dans le Serveur HTTP Apache 2.0

Depuis la version 8.0 de Red Hat Linux, les paquetages du Serveur HTTP Apache a été renommé. Certains paquetages associés ont également été renommés, retirés ou incorporés dans d'autres paquetages.

Vous trouverez ci-dessous une liste des changements de paquetage :

  • Les paquetages apache, apache-devel et apache-manual ont été renommés respectivement httpd, httpd-devel et httpd-manual.

  • Le paquetage mod_dav a été incorporé dans le paquetage httpd.

  • Les paquetages mod_put et mod_roaming ont été supprimés car leur fonctionnalité correspond en fait à un sous-ensemble de celle fournie par mod_dav (qui est maintenant incorporée dans le paquetage httpd).

  • Les paquetages mod_auth_any et mod_bandwidth ont été supprimés.

  • Le numéro de version du paquetage mod_ssl est désormais synchronisé avec le paquetage httpd. Cela signifie que le paquetage mod_ssl du Serveur HTTP Apache 2.0 a un numéro de version plus bas que le paquetage mod_ssl pour le Serveur HTTP Apache 1.3.

10.1.3. Changements du système de fichiers de la version 2.0 du Serveur HTTP Apache

Lorsque vous passez à la version 2.0 du Serveur HTTP Apache, voici les changements apportés au système de fichiers :

  • Un nouveau répertoire de configuration, /etc/httpd/conf.d/, a été ajouté. — Ce nouveau répertoire sert à stocker les fichiers de configuration des modules en paquetages individuels, tels que mod_ssl, mod_perl et php. La directive Include conf.d/*.conf demande au serveur de charger les fichiers de configuration à partir de cet emplacement au sein du fichier de configuration du Serveur HTTP Apache, /etc/httpd/conf/httpd.conf.

    ImportantImportant
     

    Lors de la migration d'une configuration existante, la ligne spécifiant le nouveau répertoire de configuration doit être insérée.

  • Les programmes ab et logresolve ont été déplacés. — Ces utilitaires sont passés du répertoire /usr/sbin/ au répertoire /usr/bin/. Par conséquent, les scripts disposant de chemins d'accès absolus pour ces binaires échoueront.

  • La commande dbmmanage a été remplacée. — La commande dbmmanage a été remplacée par htdbm. Reportez-vous à la Section 10.2.4.4 pour de plus amples informations.

  • Le fichier de configuration logrotate à été renommé. — Le nom du fichier de configuration logrotate a été changé de /etc/logrotate.d/apache à /etc/logrotate.d/httpd.

La section qui suit présente la migration d'une configuration du Serveur HTTP Apache version 1.3 au nouveau format 2.0.