« Le fonctionnement du protocole HTTP » : différence entre les versions

De EduTech Wiki
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 2 : Ligne 2 :
==Introduction==
==Introduction==


L'acronyme HTTP signifie "Hypertext Transfert Protocol". Il a été invinté par Tim-Berner Lee dans les années 1990. C'est le protocole le plus utilisé sur Internet.  
L'acronyme HTTP signifie "Hypertext Transfert Protocol". Il a été invinté par Tim-Berner Lee dans les années 1990. C'est le protocole le plus utilisé sur Internet. La version 1.0 du protocole (la plus utilisée) permet désormais de transférer des messages avec des en-têtes décrivant le contenu du message en utilisant un codage de type MIME.  
La version 1.0 du protocole (la plus utilisée) permet désormais de transférer des messages avec des en-têtes décrivant le contenu du message en utilisant un codage de type MIME.  
 
Le but du protocole HTTP est de permettre un transfert de fichiers (essentiellement au format HTML) localisés grâce à une chaîne de caractères appelée URL entre un navigateur (le client) et un serveur Web (appelé d'ailleurs httpd sur les machines UNIX).  
Le but du protocole HTTP est de permettre un transfert de fichiers (essentiellement au format HTML) localisés grâce à une chaîne de caractères appelée URL entre un navigateur (le client) et un serveur Web (appelé d'ailleurs httpd sur les machines UNIX).  


Ce protocole est un protocole de communication client-serveur et fonctionne sur le principe "requête-réponse". Dans le  [http://edutechwiki.unige.ch/fr/Mod%C3%A8le_OSI Le modèle OSI], le protocole HTTP est un protocole de la couche application.
Ce protocole est un protocole de communication client-serveur et fonctionne sur le principe "requête-réponse". Dans le  [http://edutechwiki.unige.ch/fr/Mod%C3%A8le_OSI modèle OSI], le protocole HTTP est un protocole de la couche application.


==Communication entre navigateur et serveur==
==Communication entre navigateur et serveur==


Pour visualiser une page Web sur son navigateur la communication entre le client (Navigateur) et le serveur (Web) se passe ainsi :
Pour visualiser une page Web sur son navigateur, la communication entre le client (Navigateur) et le serveur (Web) se passe ainsi :


[[Fichier:Protocole.png|1500px|sans_cadre|centré]]
[[Fichier:Protocole.png|1500px|sans_cadre|centré]]
Le navigateur(Firefox,Chrome,etc..) envoie une requête HTTP au serveur qui la décode et renvoie une réponse HTTP au navigateur.
Cette requête demande un document. (Ex une page HTML, uen image ou un fichier CSS,etc...). Le serveur cherche les infromations, peut-être amené à interpréter les résultats et envoie la réponse. Cette réponse contient les entêtes du protocole HTTP et le contenu demandé.


==La requête HTTP==
==La requête HTTP==
Une requête HTTP est un ensemble de lignes envoyé au serveur par le navigateur. Elle comprend : •Une ligne de requête: c'est une ligne précisant le type de document demandé, la méthode qui doit être appliquée, et la version du protocole utilisée. La ligne comprend trois éléments devant être séparés par un espace : •La méthode
*L'URL
*La version du protocole utilisé par le client (généralement HTTP/1.0)
*Les champs d'en-tête de la requête: il s'agit d'un ensemble de lignes facultatives permettant de donner des informations supplémentaires sur la requête et/ou le client (Navigateur, système d'exploitation, ...). Chacune de ces lignes est composée d'un nom qualifiant le type d'en-tête, suivi de deux points (:) et de la valeur de l'en-tête
*Le corps de la requête: c'est un ensemble de lignes optionnelles devant être séparées des lignes précédentes par une ligne vide et permettant par exemple un envoi de données par une commande POST lors de l'envoi de données au serveur par un formulaire
==La réponse HTTP==
Une réponse HTTP est un ensemble de lignes envoyées au navigateur par le serveur. Elle comprend : •Une ligne de statut: c'est une ligne précisant la version du protocole utilisé et l'état du traitement de la requête à l'aide d'un code et d'un texte explicatif. La ligne comprend trois éléments devant être séparés par un espace : •La version du protocole utilisé
*Le code de statut
*La signification du code
*Les champs d'en-tête de la réponse: il s'agit d'un ensemble de lignes facultatives permettant de donner des informations supplémentaires sur la réponse et/ou le serveur. Chacune de ces lignes est composée d'un nom qualifiant le type d'en-tête, suivi de deux points (:) et de la valeur de l'en-tête
*Le corps de la réponse: il contient le document demandé


==Bibliographie==
==Bibliographie==
* Comment ça marche: [http://www.commentcamarche.net/contents/520-le-protocole-http Le protocole HTTP]
* Comment ça marche: [http://www.commentcamarche.net/contents/520-le-protocole-http Le protocole HTTP]
* Wikipédia : [https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol Le protocole HTTP]
* Wikipédia : [https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol Le protocole HTTP]

Version du 30 janvier 2016 à 19:03

Cet article est une ébauche à compléter. Une ébauche est une entrée ayant un contenu (très) maigre et qui a donc besoin d'un auteur.

Introduction

L'acronyme HTTP signifie "Hypertext Transfert Protocol". Il a été invinté par Tim-Berner Lee dans les années 1990. C'est le protocole le plus utilisé sur Internet. La version 1.0 du protocole (la plus utilisée) permet désormais de transférer des messages avec des en-têtes décrivant le contenu du message en utilisant un codage de type MIME.

Le but du protocole HTTP est de permettre un transfert de fichiers (essentiellement au format HTML) localisés grâce à une chaîne de caractères appelée URL entre un navigateur (le client) et un serveur Web (appelé d'ailleurs httpd sur les machines UNIX).

Ce protocole est un protocole de communication client-serveur et fonctionne sur le principe "requête-réponse". Dans le modèle OSI, le protocole HTTP est un protocole de la couche application.

Communication entre navigateur et serveur

Pour visualiser une page Web sur son navigateur, la communication entre le client (Navigateur) et le serveur (Web) se passe ainsi :

Protocole.png

Le navigateur(Firefox,Chrome,etc..) envoie une requête HTTP au serveur qui la décode et renvoie une réponse HTTP au navigateur. Cette requête demande un document. (Ex une page HTML, uen image ou un fichier CSS,etc...). Le serveur cherche les infromations, peut-être amené à interpréter les résultats et envoie la réponse. Cette réponse contient les entêtes du protocole HTTP et le contenu demandé.

La requête HTTP

Une requête HTTP est un ensemble de lignes envoyé au serveur par le navigateur. Elle comprend : •Une ligne de requête: c'est une ligne précisant le type de document demandé, la méthode qui doit être appliquée, et la version du protocole utilisée. La ligne comprend trois éléments devant être séparés par un espace : •La méthode

  • L'URL
  • La version du protocole utilisé par le client (généralement HTTP/1.0)
  • Les champs d'en-tête de la requête: il s'agit d'un ensemble de lignes facultatives permettant de donner des informations supplémentaires sur la requête et/ou le client (Navigateur, système d'exploitation, ...). Chacune de ces lignes est composée d'un nom qualifiant le type d'en-tête, suivi de deux points (:) et de la valeur de l'en-tête
  • Le corps de la requête: c'est un ensemble de lignes optionnelles devant être séparées des lignes précédentes par une ligne vide et permettant par exemple un envoi de données par une commande POST lors de l'envoi de données au serveur par un formulaire

La réponse HTTP

Une réponse HTTP est un ensemble de lignes envoyées au navigateur par le serveur. Elle comprend : •Une ligne de statut: c'est une ligne précisant la version du protocole utilisé et l'état du traitement de la requête à l'aide d'un code et d'un texte explicatif. La ligne comprend trois éléments devant être séparés par un espace : •La version du protocole utilisé

  • Le code de statut
  • La signification du code
  • Les champs d'en-tête de la réponse: il s'agit d'un ensemble de lignes facultatives permettant de donner des informations supplémentaires sur la réponse et/ou le serveur. Chacune de ces lignes est composée d'un nom qualifiant le type d'en-tête, suivi de deux points (:) et de la valeur de l'en-tête
  • Le corps de la réponse: il contient le document demandé

Bibliographie