Ouvrir le menu principal

Serveur web

serveur informatique suivant le protocole HTTP
(Redirigé depuis Serveurs HTTP)
Serveurs de la Wikimedia Foundation.
Centre d'accueil des visiteurs du CERN, premier serveur web de l'histoire (1989).

Un serveur web ou serveur Web est un serveur informatique qui répond à des requêtes du World Wide Web, en utilisant principalement le protocole HTTP. L’expression désigne couramment aussi bien le logiciel que l’ordinateur sur lequel celui-ci fonctionne pour diffuser du contenu sur un réseau public (Internet) ou privé (intranet)[1],[2],[3].

Un serveur informatique peut être utilisé à la fois pour servir des ressources du Web et pour faire fonctionner en parallèle d'autres services liés comme l'envoi d'e-mails, l'émission de flux streaming, le stockage de données via des bases de données, le transfert de fichiers par FTP, etc[3].

PrésentationModifier

Les serveurs web publics sont reliés à Internet et hébergent des ressources (pages web, images, vidéos, etc.) du Web. Ces ressources peuvent être statiques (servies telle-quelles) ou dynamiques (construites à la demande par le serveur).

Certains serveurs sont seulement accessibles sur des réseaux privés (intranets) et hébergent des sites utilisateurs, des documents, ou des logiciels, internes à une entreprise, une administration, etc.

Techniquement il serait possible qu'un même ordinateur remplisse ces deux fonctions, mais c'est rarement le cas pour des raisons de sécurité[réf. nécessaire]. La fonction principale d'un serveur Web est de stocker et délivrer des pages web qui sont généralement rendues en HTML. Le protocole de communication Hypertext Transfer Protocol (HTTP) permet le dialogue via le réseau avec le logiciel client, généralement un navigateur web.

Logiciel de serveurs HTTPModifier

Les deux termes sont utilisés pour le logiciel car le protocole HTTP a été développé pour le Web, et les pages Web sont en pratique toujours servies avec ce protocole. Cependant d'autres ressources du Web comme les fichiers à télécharger ou les flux audio ou vidéo sont parfois servis avec d'autres protocoles[Lesquels ?].

Exemples de serveur HTTPModifier

 
Part des serveurs HTTP dans le monde.
 
Part des serveurs HTTP dans le monde en janvier 2016.
 

Part de marché du million de serveurs les plus actifs[4]

CERN httpd est le premier serveur HTTP, inventé en même temps que le World Wide Web, en 1990 au CERN de Genève, il est rapidement devenu obsolète en raison de l'évolution exponentielle des fonctionnalités du protocole.

Quelques serveurs HTTP :

Part de marchéModifier

Le serveur HTTP le plus utilisé est Apache HTTP Server qui sert environ 55 % des sites web en janvier 2013 selon Netcraft[6].

Le serveur HTTP le plus utilisé dans les 1 000 sites les plus actifs est en revanche Nginx avec 38,2 % de parts de marché en 2016 selon w3techs et 53,9 % en avril 2017[4]

Historiquement, d'autres serveurs HTTP importants furent CERN httpd, développé par les inventeurs du Web, abandonné le et NCSA HTTPd, développé au NCSA en même temps que NCSA Mosaic, abandonné mi-1994, ainsi que WebObjects.

Il existe aussi des serveurs HTTP qui sont des serveurs d'applications capables de faire serveur HTTP, comme Roxen, Caudium et GlassFish. A l'inverse, on peut trouver des serveurs HTTP spécialisés dans un service distinct comme : HTTP File Server qui est uniquement destiné au partage de fichiers Le logiciel serveur HTTP ou daemon HTTP est le logiciel prenant en charge les requêtes client-serveur du protocole HTTP développé pour le World Wide Web. Ces logiciels intègrent généralement des modules permettant d'exécuter un langage serveur comme PHP pour générer des pages web dynamiques. Les plus connus sont Apache, Nginx, IIS, et Lighttpd.

Autres logiciels usuelsModifier

Le plus souvent, un serveur Web exécute continuellement d'autres logiciels qui fonctionnent en collaboration avec le logiciel de serveur HTTP. Selon les besoins, certains services gourmands en ressources, comme le serveur de base de données, peuvent être situés sur la même machine ou un serveur spécialisé.

Certaines combinaisons de logiciels de base sont connues sous différents acronymes, notamment celle d'Apache (serveur HTTP) logiciel installé et exécuté sur le serveur web en parallèle de MySQL (serveur de base de données) et le script d'interprétation et d'exécution de PHP (voire PHP-FPM)[7].

Voir en PDF l'introduction « Qu'entend-t-on par serveur HTTP et serveur Web ? » d'Anthony Garcia (2008) - IBISC[source insuffisante] :

Il existe aussi la distribution de Microsoft nommée IIS pour « Internet Information Services » qui comprend plusieurs services : HTTP, FTP, SMTP et NNTP.

ProblématiquesModifier

Équilibrage de chargeModifier

L’équilibrage de charge des serveurs web, ou répartition de charge des serveurs Web, regroupe l’ensemble des mécanismes utilisés pour distribuer les requêtes sur de multiples serveurs Web. Cette pratique est devenue indispensable depuis l’explosion du trafic du Web qui a pour conséquence un accroissement important de la charge demandé au serveur. Cela a entraîné une évolution des architectures, destinée à apporter plus de scalabilité, de disponibilité et de performances.

Notes et référencesModifier

  1. « Serveur Web : définition, bases, astuces et logiciels », sur IONOS.fr (consulté le 22 octobre 2019).
  2. Alain Mathieu et Dominique Lerond, « Serveur web - Définition », sur mosaique-info.fr (consulté le 22 octobre 2019).
  3. a et b Pierre Alexis, Hugues Bersini et Gilles Degols, Apprendre la programmation web avec Python & Django : Principes et bonnes pratiques pour les sites web dynamiques, Eyrolles, (ISBN 9782212675153, lire en ligne), p. 9
  4. a et b (en) « Usage of web servers broken down by ranking » (consulté le 27 avril 2017).
  5. (en) « BusyBox HTTP Daemon (httpd) », OpenWrt.
  6. (en) « January 2013 Web Server Survey », Netcraft, 7 janvier 2013.
  7. Anthony Garcia, Apache, (lire en ligne [PDF])

AnnexesModifier