Bibliothèque Numérique ENI :
tous nos livres & vidéos, en accès illimité 24h/24. Cliquez ici
Bibliothèque Numérique ENI :
tous nos livres & vidéos, en accès illimité 24h/24. Cliquez ici
  1. Livres & vidéos
  2. LAMP
  3. Découvrir Apache
Extrait - LAMP Installez et configurez votre serveur web (Linux, Apache, MySQL et PHP)
Extraits du livre
LAMP Installez et configurez votre serveur web (Linux, Apache, MySQL et PHP) Revenir à la page d'achat du livre

Découvrir Apache

Principes de base

1. Qu’est-ce qu’un serveur web ?

Un serveur web est un système qui permet de stocker des fichiers et de les distribuer à travers le réseau. Il héberge les différents fichiers qui seront redistribués plus tard par les sites web. Il s’agit essentiellement des fichiers HTML (HyperText Markup Language), mais également des images, des vidéos ou encore du texte. Ces fichiers sont stockés sous une arborescence de répertoires, dans un système de fichiers fourni par le système d’exploitation. Pour faire référence à ces fichiers, on parle également de ressources web. Elles sont accessibles par une URL (Uniform Resource Locator) lors d’une requête émise depuis le navigateur web d’un utilisateur par exemple.

2. Comment fonctionne le serveur web ?

Afin de distribuer les ressources par le réseau, le serveur web utilise le protocole HTTP (HyperText Transfer Protocol). Il s’agit d’un protocole réseau qui fonctionne sur un modèle « client-serveur  ». Pour cela, il est composé principalement d’un logiciel de serveur HTTP qui permet la communication avec un client HTTP, généralement le navigateur web d’un utilisateur.

Pour expliquer le fonctionnement d’un serveur web, imaginons le scénario suivant. Vous...

Présentation d’Apache

1. Apache en quelques mots

Apache HTTP Server (en français, Serveur HTTP Apache), plus connu sous le nom d’Apache, est un logiciel polyvalent qui propose de nombreuses fonctionnalités. C’est l’un des logiciels les plus utilisés sur Internet pour la mise en œuvre de serveurs web. Il est présent dans l’écosystème du Web depuis bientôt plus de 30 ans.

2. L’histoire d’Apache

a. Les débuts avec le groupe Apache

La première version d’Apache a été publiée en avril 1995, par un groupe de développeurs nommé Apache Group.

Cette première version (Apache 0.6.2) était composée d’un ensemble de correctifs et d’améliorations apportées au logiciel NCSA HTTPd, dont le développement avait été arrêté quelque temps plus tôt.

Cette initiative a bien été accueillie, et dans la même année, le 1er décembre 1995, une version 1.0 du logiciel a été publiée.

Apache est devenu très rapidement le logiciel de serveur web le plus utilisé sur Internet. Son développement par le groupe Apache a continué sous la même forme jusqu’à la publication de la version 1.3 en juin 1998.

b. L’évolution avec la fondation Apache

En mars 1999...

Utilisation d’Apache

Le cas d’usage le plus courant d’Apache, c’est son utilisation en tant que serveur web pour l’hébergement de nombreux sites web. C’est d’ailleurs ce cas d’usage qui sera présenté dans cet ouvrage.

Il existe d’autres cas d’usage répandus, notamment son utilisation en tant que proxy (en français, serveur mandataire ; il agit comme un intermédiaire entre le client et le serveur) ou en tant qu’équilibreur de charge. Dans ce type de configuration, il est placé en amont des serveurs web afin de permettre l’application de différentes règles, avant de leur transmettre les requêtes demandées par les clients.

Distribution d’Apache

Apache est un logiciel libre et open source, publié sous licence Apache. Ses fichiers sources sont disponibles afin d’être modifiés et redistribués librement.

Il peut être installé sur de nombreux systèmes d’exploitation, notamment sous Windows, Linux et macOS. Sous Linux, il est distribué à travers les dépôts de paquets de différentes distributions. En revanche, pour les autres systèmes d’exploitation, il sera nécessaire de l’installer à partir des sources, ou de se procurer les exécutables par d’autres moyens. Par exemple, pour la mise en place d’une pile WAMP avec Windows, il est possible d’obtenir des exécutables gratuitement, auprès d’Apache Lounge.

Apache Lounge est un groupe de développeurs passionnés qui fournit des exécutables d’Apache pour Windows depuis plusieurs années. Si vous souhaitez en savoir plus, consultez leur site à l’adresse suivante : https://www.apachelounge.com/

Le choix d’Apache

Un des arguments en faveur d’Apache, c’est sa modularité. En effet, depuis sa création, Apache a été pensé pour être modulaire. Il propose de nombreux modules qui peuvent être activés ou désactivés à la volée pour étendre ses fonctionnalités ou pour optimiser ses performances.

C’est aussi l’un des plus anciens logiciels de serveur web en activité. Il a prouvé sa robustesse et sa stabilité depuis plusieurs années. En effet, il a gagné la confiance de nombreuses entreprises qui ont fait le choix d’Apache pour héberger leurs sites web et leurs applications web. On le retrouve également comme logiciel de serveur web dans les offres d’hébergements de plusieurs hébergeurs sur Internet.

Grâce à sa popularité et sa longévité, Apache dispose d’une communauté étendue et d’un large éventail de ressources documentaires accessible gratuitement. La communauté réactive qui gravite autour du logiciel, ainsi que les différentes documentations disponibles sur le Web, vous permettra d’aller plus loin dans votre implémentation.

Dans cet ouvrage, nous allons couvrir Apache et son utilisation au sein de la pile LAMP. Néanmoins, la section suivante vous présente...

Les alternatives à Apache

1. Nginx

Nginx est une des meilleures alternatives à Apache pour créer son serveur web.

Ce logiciel a été créé par Igor Sysoev et une première version a été publiée en octobre 2004. Il s’agit d’un projet open source publié sous licence BSD.

En 2011 la société Nginx Inc. a été créée pour fournir un support payant pour le logiciel et proposer également une version commerciale nommée Nginx Plus.

La société Nginx Inc. a été rachetée en 2019 par F5 Networks qui continue de soutenir le logiciel comme projet libre et open source.

Conçu à l’origine pour répondre à la charge supportée par un site à fort trafic, Nginx est reconnu pour ses performances et sa stabilité.

Pour ces raisons, en plus de son utilisation pour mettre en place un serveur web, on le retrouve souvent en tant qu’équilibreur de charge ou en tant que proxy dans les architectures web.

2. Lighttpd

Dans le monde du logiciel libre, on peut citer également lighttpd dont le développement a été initié par Jan Kneschke avec une première version publiée en mars 2003 sous licence BSD.

C’est une alternative à Apache qui offre une faible utilisation de mémoire et une faible charge au niveau...

Obtenir de l’aide pour Apache

Dans cet ouvrage, nous allons nous efforcer de vous donner les bases qui vous permettront de débuter avec Apache dans une pile LAMP. Néanmoins, si vous souhaitez obtenir de l’aide sur Apache ou une fonctionnalité qui n’aurait pas été couverte dans cet ouvrage, vous pouvez consulter la documentation officielle du logiciel à l’adresse https://httpd.apache.org/docs/. C’est aussi un point à privilégier pour se maintenir à jour étant donné que le projet est en constante évolution et que les fonctionnalités peuvent varier ou être dépréciées au fil des versions.

L’équipe d’Apache maintient également un site web sous forme de Wiki que vous pouvez retrouver à l’adresse suivante http://wiki.apache.org/httpd/. Il regroupe des astuces et des procédures qui pourront vous être utiles.

En cas de besoin, n’hésitez pas non plus à solliciter la communauté à travers les sites d’entraide ou les différents forums qui existent. La communauté d’Apache regroupe de nombreux utilisateurs et développeurs qui pourront vous être d’une grande aide, notamment si vous vous retrouvez dans une situation bloquante.