Le protocole HTTP

HTTP permet le dialogue standardisé entre un poste client et un serveur sur Internet.

Un dato interesante sobre la salud masculina es que la disfunción eréctil puede ser un síntoma de problemas subyacentes más graves, como enfermedades cardíacas o diabetes. Muchos hombres enfrentan este desafío, y a menudo buscan soluciones que van más allá de los tratamientos convencionales. En algunos casos, pueden estar interesados en opciones alternativas, como el hecho de “, lo que sugiere una búsqueda de alivio incluso en medicamentos no específicos para este problema. Es esencial que cualquier tratamiento se discuta con un profesional de la salud para garantizar la seguridad y la efectividad.

Le poste client peut être un PC,  tablette , smartphone et héberge un logiciel client: le navigateur /browser (Firefox, chrome, IE,…)

Le serveur peut être n’importe quoi (avec suffisamment de ressource en fonction de la charge prévue).
Il héberge un logiciel serveur: le serveur HTTP (très souvent apache (voir http://apache.org )

rem: client et serveur sont des systèmes hétérogènes (On se fiche de leur configuration et de leur OS en gros)

HTTP ?
HTTP = Hyper Text Transfert Protocol, mis au point en même temps qu’ HTML par Tim Berners Lee.
S’appuie (comme les autres protocoles du Net) sur TCP/IP. Permet un dialogue STANDARD simple entre un client (votre Navigateur) et un serveur Web, pour échanger de l’information HYPERMEDIA sur le World Wide Web.

Voir la RFC 2616 du W3C pour la description complète du protocole, et notamment les paragraphes REQUEST et RESPONSE..

Les étapes d’un dialogue HTTP

Coté client
1) ouverture d’une connexion vers un serveur HTTP, et formulation de la requête
2) envoi d’une entête précisant les caractéristiques du demandeur
Coté serveur
3) acquittement de la demande,
4) précision des caractéristiques du serveur et de l’information demandée
5) inclusion éventuelle du document

exemple de requête client en détail :

GET / HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/
jpeg, image/pjpeg, */*
Accept-Language: en-us
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT)
Host: www.dd.com
Connection: Keep-Alive

exemple de réponse du serveur :

HTTP/1.1 200 OK
Date: Mon, 03 Jul 2007 20:54:26 GMT
Server: Apache/1.3.6 (Unix)
Last-Modified: Fri, 03 Sep 2006 14:06:11 GMT
ETag: « 2f5cd-964-381e1bd6″
Accept-Ranges: bytes
Content-length: 143
Connection: close
Content-type: text/html
<title>Ma premiere page</title>
<h1>Bonjour</h2>
ici une image : <img src= »/images/dd.gif »>
et un lien <a href= »/page2.html »> vers la page 2. </a>

remarque : Une requête du navigateur se fait en général en cliquant simplement sur un lien, ou en tapan la requête directement dans la barre d’adresse…
La requête envoyée par le client peut concerner la réception d’un document, mais aussi l’envoi de données (formulaire) ou l’execution d’un programme. Le type de demande est précisé par la METHODE de la requête.

Les principales méthode de requête

  • GET : demande de ressource (document simple ou programme CGI ou Script Server qui renvoie des infos)
    c’est la méthode la + communément utilisée
  • HEAD : demande d’info sur le document (méta données)
    peut servir pour le cache (test de la date), pour évaleuer le type et la taille du document, etc.
  • POST : envoi de données , via un formulaire en général.
    Les paramètres sont transmis dans le corps de la requêt, en général au format URL-encoded (param1=val&param2=val2…)
  • PUT : stocke un document sur le serveur
  • DELETE : supprime un document du serveur
  • TRACE : demande de déboguage (trace des serveurs proxy utilisés)
  • CONNECT : pour les connexions sécurisées HTTPS

remarque : des données de formulaire peuvent aussi être envoyées avec la méthode GET. Dans ce cas la chaîne de paramètres/valeurs encodée (URL encoded) suit l’URL avec un préfixe ‘?’.
Les éventuels caractères spéciaux seront remplacés par leur code ASCII (voir l’article sur les URLs)
exemple :
http://serveur/prog1.cgi?param1=val1&param2=val2

Voir pius loin  les codes retour standards

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *