Apache

[Plume]

    1. Présentation d'Apache
      1. Présentation
      2. Modules
      3. Installation - configuration
    2. Système requis
      1. Logiciel
      2. Matériel
    3. Licence
    4. Distribution
    5. Voir aussi

Apache est un serveur HTTP maintenu par l'Apache Group. Apache est le fruit de l'effort de webmasters qui développèrent chacun des extensions au serveur le plus populaire de l'époque (le serveur HTTP du NCSA), puis décidèrent de former l'Apache Group afin de mettre en commun leurs efforts et de produire le serveur HTTP le plus robuste et le plus stable jamais connu.

Le nom Apache vient de 'a patchy server', en raison du mode de développement par patchs de ces premières versions. Ses performances, sa robustesse, son utilisation aisée, et sa licence en font le serveur web le plus populaire au monde depuis mars 1997 (actuellement 53.44% des sites mondiaux tournent sur Apache, soit 1.182.142 sites répertoriés).

Présentation d'Apache

Présentation

Apache est conforme au protocole HTTP (utilisé pour la communication entre les navigateurs et le serveur), et reconnaît également les requètes HTTP/1.1, dernières extensions à HTTP.

Apache intègre le concept de modules, ce qui rend facile le développement d'extensions par la communauté du logiciel libre. Cette facilité donne à Apache un grand nombre de fonctionnalités uniques (voir l'URL http://modules.apache.org pour une liste des modules développés).

Apache existe sur plusieurs plates-formes différentes: la plupart des UNIX et même plus récemment sur Windows NT (un port Macintosh est d'ailleurs en cours). La version Windows NT ne fait cependant pas l'objet d'une distribution massive de sources car la compilation des sources nécessiterait l'utilisation d'outils propriétaires.

Toutes ces versions sont compatibles entre elles, et l'installation se fait par la biais de la même distribution sur tous les UNIX. La version Windows NT s'installe graphiquement par le biais d'Install Shield.

Modules

Parmi tous les modules d'Apache, on peut citer:

  • le module typo: il permet de corriger à la volée une URL mal formée, et de rediriger la requète vers une URL valide approchante.
  • le module include: il permet d'insérer des directives (server side includes) dans les documents HTML, et de demander au serveur d'interpréter ces dernières. Les directives incluent des tests et permettent principalement d'inclure des fichiers dans des pages HTML (la barre de navigation en haut des pages du serveur d'APRIL est faite avec des server side includes)
  • le module log: il permet de gérer les logs (fichiers dans lesquels tous les accès au serveur sont archivés), et d'ajouter dans ces derniers des informations propres à l'utilisateur.
  • le module auth: ce module permet une authentification du client grâce au protocole HTTP. Cette authentification n'est pas forcément très fiable puisque le protocole envoie le mot de passe en clair. L'utilité est d'isoler du reste du serveur des pages utiles à un faible nombre de personnes.
  • le module status: ce module permet de générer une page HTML contenant le statut du serveur. Des informations telles que le nombre de serveurs lancés ou les dernières requêtes reçues sont disponibles
  • le module info: ce module qui ressemble au précédent permet de générer une page HTML contenant des informations sur la configuration du serveur.
  • le module so: ce module expérimental permet de charger 'à la volée' sans recompilation des modules, en utilisant le principe des librairies dynamiques

Installation - configuration

L'installation d'Apache est relativement simple. Il s'agit normalement (comme détaillé dans la documentation fournie dans la distribution):

  • de décompacter une archive tarée et gzipée,
  • de lancer le script de configuration fourni dans la distribution
  • compilation (make)
  • copie du binaire, puis des fichiers de configuration

La procédure à suivre pour ensuite configurer le serveur nécessite une bonne lecture de la documentation, mais les fichiers d'exemple fournis sont assez génériques, et abondamment commentés.

Plusieurs interfaces de configuration d'Apache sont disponibles, et une page web indique l'état actuel du projet Apache GUIs: http://apache.on-the-net.com.

Système requis

Logiciel

Apache a été porté avec succès sur énormément de plates-formes. Aucun logiciel n'est vraiment requis pour faire fonctionner le serveur, hormis un compilateur C dans le cas d'une installation à partir de sources.

Matériel

  • à partir de n'importe quel 486
  • en fonction du trafic, à partir de 8 M de RAM (ce chiffre varie aussi selon le système sur lequel tourne le serveur)

Licence

La licence d'Apache n'est pas la GPL mais autorise à la fois la distribution de versions binaires et de code source. La distribution de versions binaires seules est autorisée dans le cas où elles préservent une notice de copyright. Dans tous les cas, une distribution doit contenir les mots:

'This product includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/).'

Distribution

La dernière version stable d'Apache est la version 1.2.6, mais la version beta la plus avancée est la version 1.3b7.

Apache est disponible en France sur le site FTP suivant:

Le site original FTP est:

De la documentation est disponible sur le site web officiel d'Apache (http://www.apache.org/docs/).

Voir aussi

Un certain nombre de projets sont développés en marge d'Apache. Parmis ceux-ci: