http.header Home



Home | Protocole Http | Références de code | FAQ | A propos | English


Qu'est-ce que le protocole http ?

Le protocole Http définit la communication entre un serveur et un demandeur dans le but de transfer un fichier. La version actuelle est Http 1.1. Voir
RFC 2616 pour plus de détails.

Le protocole Http est utilisé comme standard pour surfer sur internet car il est complémentaire au Html.


Que se passe-t-il lorsque je surfe sur internet ?

Quand je clique sur un lien hypertext, je transmet à mon navigateur une URL. Celui-ci sait, alors, quel serveur contacter et quel fichier demander.

C'est à ce moment que le protocole Http entre en action : le transfert du fichier depuis le serveur jusque sur mon PC !
 

    Dans cette page

Protocole Http
Exemple Http


    Références

Codes Http
Attributs Http


    Liens externes

RFC 2616 (http 1.1)

 
Déroulement d'une session Http

Durant une transaction Http, le demandeur, aussi appelé client, demande un fichier au serveur.

Déroulement normal :
   1 Le client se connecte au serveur,
   2 Le serveur accepte la connection,
   3 Le client demande un fichier,
   4 Le serveur envoie une réponse.


Exemples Http

Tout d'abord, demandons la page d'exemple de Http.Header (cette page).
Donc, vous saisissez "http://fr.http.header.free.fr/http.html" dans la barre d'adresse de votre navigateur. Celui-ci se connecte au serveur 'www.http.header.free.fr' et envoie :

>> GET /http.html Http1.1
>> Host: fr.http.header.free.fr
>> Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
>> Accept-Language: Fr
>> Accept-Encoding: gzip, deflate
>> User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 4.0)
>> Connection: Keep-Alive
>>

Explications : mon navigateur demande la page "http.html". Il souhaite utiliser le protocole http 1.1. Mon navigateur est en Français et est Microsoft Internet Explorer 5.5 sous WNT 4.
Mon navigateur souhaite conserver la connection (socket) ouverte entre moi et fr.http.header.free.fr, afin de pouvoir demander immédiatement d'autres fichier, comme les images de cette page...

Apache, le serveur web de Free répond :

<< HTTP/1.1 200 OK
<< Date: Mon, 12 Mar 2001 19:12:16 GMT
<< Server: Apache/1.3.12 (Unix) Debian/GNU mod_perl/1.24
<< Last-Modified: Fri, 22 Sep 2000 14:16:18
<< ETag: "dd7b6e-d29-39cb69b2"
<< Accept-Ranges: bytes
<< Content-Length: 3369
<< Connection: close
<< Content-Type: text/html
<<
<< File content goes here

D'abord, le serveur web de free connaît la page que je veux télécharger, et il peut l'envoyer : code 200...
Ensuite, le serveur donne des infos sur lui-même : Apache on Unix, socket fermée après le téléchargement, date de dernière modification...


Autre exemple, demandons Yahoo! France.
Mon navigateur ne connaît pas le nom de la page, puisque l'url est "http://www.yahoo.fr/".
Mon navigateur se connecte au serveur "www.yahoo.fr" and essaye :

>> GET / Http1.0
>> Connection: Keep-Alive
>> User-Agent: Mozilla/4.7 [Fr] (Win98; I)
>> Host: www.yahoo.fr
>> Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png,
>> Accept-Encoding: gzip
>> Accept-Language: Fr
>> Accept-Charset: iso-8859-1,*,utf-8
>>

Mon navigateur demande la page qui est à la racine du serveur web. Mon navigateur est Netscape Navigator 4.7 en français, sous Windows 98.
Le serveur réponds :

<< HTTP/1.1 302 Found
<< Date: Mon, 12 Mar 2001 19:17:03 GMT
<< Location: http://fr.yahoo.com/
<< Connection: close
<< Transfer-Encoding: chunked
<< Content-Type: text/html; charset=iso-8859-1
<<
<< File content goes here


Mon navigateur est "redirigé". Il sait maintenant qu'il doit demander la page "http://fr.yahoo.com/".
Il se conncte au serveur "fr.yahoo.com", et :

>> GET / Http1.0
>> Connection: Keep-Alive
>> User-Agent: Mozilla/4.7 [Fr] (Win98; I)
>> Host: fr.yahoo.com
>> Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png,
>> Accept-Encoding: gzip
>> Accept-Language: Fr
>> Accept-Charset: iso-8859-1,*,utf-8
>>

Le serveur réponds...

<< HTTP/1.0 200 OK
<< Date: Mon, 12 Mar 2001 19:20:33 GMT
<< Cache-Control: private
<< Expires: Mon, 12 Mar 2001 19:20:33 GMT
<< Connection: close
<< Content-Type: text/html
<< Set-Cookie: B=460soc0taq8c1&b=2; expires=Thu, 15 Apr 2010 20:00:00 GMT; path=/; domain=.yahoo.com
<<
<< File content goes here

Vous n'avez rien vu...




Matthieu Delgrange 2006 - http.header@netcourrier.com - Home