HTTP dans le détail

Rappel

On s'intéresse ici au protocole HTTP : HyperText Transfer Protocol ou protocole de transfert hypertexte.

Schématisation d'une requête HTTP

À chaque fois qu'un navigateur a besoin d'un fichier hébergé sur un serveur web, le navigateur demande (on dit qu'il envoie une requête) le fichier via HTTP.

Quand la requête atteint le bon serveur web (matériel), le serveur HTTP (logiciel) renvoie le document demandé, également grâce à HTTP.

En première approche, on peut schématiser cette requête ainsi :

Schéma d'une requête HTTP

Principe du protocole HTTP

Pour se faire une première idée du protocole, voici ce qui est écrit sur Wikipédia pour la première version du protocole (c'est un peu plus complexe pour les versions ultérieures mais le principe de base reste le même) :

  • connexion du client HTTP,

  • envoi d'une requête de méthode GET,

  • réponse du serveur HTTP,

  • le serveur ferme la connexion pour signaler la fin de la réponse.

Protocole HTTP en vidéo
Informations[1]

Quelques caractéristiques du protocole HTTP

Ses caractéristiques principales :

  • Textuel : les échanges se font en texte lisible par un humain.

  • Sans mémoire : le serveur et le client ne gardent pas trace des échanges précédents (par exemple, un serveur ne sait pas si tu es déjà connecté).

Comment ça marche ?

  • Seul le client peut envoyer une demande (requête) au serveur.

  • Le client doit préciser l’adresse (URL) du fichier qu’il veut.

  • Le serveur doit toujours répondre, même si c’est pour dire qu’il y a une erreur.

  • Si le fichier existe, le serveur l’envoie. Sinon, il renvoie une erreur (comme le célèbre « 404 : page non trouvée »).

Exemple d'une page 404