Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
💥 Du 22 au 24 novembre : Accès 100% GRATUIT
à la Bibliothèque Numérique ENI. Je m'inscris !
  1. Livres et vidéos
  2. Apache 2.4
  3. Introduction
Extrait - Apache 2.4 Installation et configuration
Extraits du livre
Apache 2.4 Installation et configuration
1 avis
Revenir à la page d'achat du livre

Introduction

Présentation du protocole HTTP

1. Introduction

Inventé en 1989 par Tim Berners-Lee, informaticien au CERN (Organisation européenne pour la recherche nucléaire), le protocole HTTP ou HyperText Transfer Protocol (protocole de transfert hypertexte) est utilisé avec le langage HTML (Hypertext Markup Language) pour créer le World Wide Web.

À cette époque, le protocole FTP (File Transfer Protocol) existait déjà pour effectuer des transferts de données, mais il ne permettait pas leur mise en forme.

Dans sa première version 0.9, il était uniquement possible de présenter du texte sans mise en forme, qui sera implémentée à partir de la version 1.0, grâce au Multipurpose Internet Mail Extensions (MIME) ou extensions multifonctions du courrier Internet permettant le transfert d’informations multimédias (images, sons, vidéos, etc.).

L’historique des versions du protocole est :

  • 1989 : version 0.9.

  • 1996 : version 1.0 publiée et décrite dans la RFC 1945.

  • 1997 : version 1.1 (RFC 2068), qui devient le standard de l’IETF (Internet Engineering Task Force).

  • 1999 : version 1.1 (RFC 2616), avec notamment l’ajout de la négociation de type de contenu.

  • 2012 : annonce de la version 2.0 avec l’introduction du protocole SPDY, prononcé « Speedy » pour « rapide » en anglais, développé par Google dans le but d’augmenter les capacités du protocole.

  • 2014 : en février, avec une revue des spécifications de la version 1.1 pour apporter des améliorations (RFC 7230 à RFC 7237).

RFC signifie Requests For Comments ou demande de commentaires.

Ce protocole est donc très récent et ne cesse d’évoluer en fonction des nouveaux besoins d’Internet.

Il permet ainsi d’accéder à des ressources distantes, de les présenter et de les mettre en forme à l’aide d’un navigateur Internet, en saisissant dans la barre d’adresse l’URL (Uniform Resource Locator, ou localisateur uniforme de ressources). 

Cette adresse est constituée des éléments suivants :

  • le protocole utilisé, par exemple http, https, ftp, svn, etc.

  • « :// », le séparateur...

Présentation d’Apache

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

Pour consulter un site Internet, une adresse, et plus particulièrement un nom de domaine, est saisie dans la barre d’adresse du navigateur (exemple : www.google.com).

Cette adresse fait référence à une adresse IP (via une résolution DNS), qui est celle de la machine (matériel informatique) ou de l’infrastructure hébergeant physiquement le site Internet (les fichiers constituant le site web y étant stockés). 

Afin de pouvoir servir les pages web via le protocole HTTP, un logiciel doit être installé sur cet environnement : il s’agit d’un service plus communément appelé « serveur web ».

Ce service écoute la plupart du temps sur le port TCP 80, celui par défaut pour le Web, et répondra donc aux requêtes émises par les clients.

Selon l’environnement et le système d’exploitation installé sur la machine dite « serveur », il existe plusieurs logiciels pour créer un serveur web, dont bien entendu Apache.

2. Apache

Apache (Apache HTTP Server) est un logiciel libre distribué sous licence Apache, créé et maintenu par la Fondation portant le même nom : la Fondation Apache.

Il s’agit du serveur HTTP le plus populaire et le plus utilisé...

Nouveautés de la version 2.4

La version 2.4 d’Apache apporte son lot de nouveautés, autant en matière de fonctionnalités que d’optimisation des performances.

Il s’agit d’une nouvelle branche logicielle avec de nombreuses modifications sur le fonctionnement interne, mais également sur certains paramétrages (changements de syntaxe, directives devenues obsolètes...).

1. Améliorations du noyau

  • Modification du MPM (modules multiprocessus) par défaut au profit du MPM Event.

  • Possibilité de passer d’un MPM à l’autre sans la nécessité de réinstaller Apache en fonction du MPM choisi. Par exemple, dans les versions précédentes (2.x), si on souhaitait utiliser le MPM worker à la place du MPM Prefork installé par défaut, il était nécessaire de désinstaller Apache dans sa version Prefork, puis d’installer la version Worker.

  • Amélioration du support du mode asynchrone.

  • Possibilité de configurer le niveau de journalisation au niveau des modules et des répertoires.

  • Ajout de sections de configuration conditionnelle (<If>, <ElseIf> et <Else>) au niveau de la requête (voir chapitre Configuration de base d’Apache, section Directives de type bloc).

  • Possibilité d’ajuster la directive KeepAliveTimeout en millisecondes.

  • Directive NameVirtualHost rendue obsolète.

  • Nouvelle directive AllowOverrideList permettant de contrôler les paramétrages autorisés dans les fichiers .htaccess.

  • Utilisation de variables dans les fichiers de configuration grâce à la directive Define.

  • Optimisation de l’utilisation de la mémoire vive.

2. Nouveaux modules

De nouveaux modules ont vu le jour, apportant de nouvelles fonctionnalités, notamment :

  • mod_proxy_fcgi, permettant l’utilisation du protocole FastCGI pour mod_proxy.

  • mod_proxy_express, permettant la configuration dynamique de Reverse Proxy.

  • mod_proxy_html, permettant...