Comprendre le protocole HTTP protocole de communication

Sommaire: Comprendre le protocole HTTP protocole de communication

1. Introduction
1.1 Objectif
1.2 Terminologie
1.3 Fonctionnement global
1.4 HTTP et MIME
2. Conventions de notation et Grammaire générique
2.1 BNF étendue
2.2 Règles de base
3. Paramètres du protocole
3.1 Numéro de Version
3.2 Uniform Resource Identifiers
3.2.1 General Syntax
3.2.2 URL http
3.3 Formats de temps et de date
3.4 Tables de caractères
3.5 Indication d’encodage du contenu
3.6 Types de média
3.6.1 Canonisation et texte par défaut
3.6.2 Types multiples « multipart »
3.7 Produits
4. Messages HTTP
4.1 Types de messages
4.2 En-têtes de messages
4.3 En tête générale
5. Request
5.1 Request-Line
5.1.1 Méthodes
5.1.2 Request-URI
5. En-tête de requête
6. Réponse
6.1 Ligne d’état
6.1.1 Code d’état et raison explicite
6.2 En-tête de réponse
7. Entités
7.1 En-tête d’entité
7.2 Corps d’entité
7.2.1 Type
7.2.2 Longueur
8. Définition des méthodes
8.1 GET
8.2 HEAD
8.3 POST
9. Définition des codes d’état
9.1 Information 1xx
9.2 Succès 2xx
200 OK
201 Créé
202 Acceptée
204 Pas de contenu
9.3 Redirection 3xx
300 Choix multiples
301 Changement d’adresse définitive
302 Changement d’adresse temporaire
304 Non modifié
9.4 Erreur client 4xx
400 Requête incorrecte
401 Non autorisé
403 Interdit
404 Non trouvé
9.5 Erreur serveur 5xx
500 Erreur serveur interne
501 Non implémenté
502 Erreur de routeur
503 Service indisponible
10. Définition des champs d’en-tête
10.1 Allow
10.2 Authorization
10.3 Content-Encoding
10.4 Content-Length
10.5 Content-Type
10.6 Date
10.7 Expires
10.8 From
10.9 If-Modified-Since
10.10 Last-Modified
10.11 Location
10.12 Pragma
10.13 Referer
10.14 Server
10.15 User-Agent
10.16 WWW-Authenticate
11. Authentification d’accès sous HTTP
11.1 Modèle d’authentification de base
12. Sécurité
12.1 Authentification des clients
12.2 Méthodes sûres
12.3 Abus de l’information Server Log Information
12.4 Transfert d’information sensible
12.5 Attaques sur les Fichiers et Répertoires
13. Crédits
14. Bibliographie
15. Adresses des auteurs
Appendices
A. Internet Media Type message/http
B. Applications tolérantes
C. Relations avec les MIME
C.1 Conversion vers la forme canonique
C.2 Conversion de formats de dates
C.3 Introduction du champ Content-Encoding
C.4 Pas de champ Content-Transfer-Encoding
C.5 Champs d’en-tête HTTP dans des parties de corps Multipart
D. Fonctions supplémentaires
D.1 Additional Request Methods
D.2 Définitions d’autres champs d’en-tête.

Extrait du cours comprendre le protocole HTTP protocole de communication

1. Introduction
1.1 Objectif
L’Hypertext Transfer Protocol (HTTP) est un protocole de niveau application suffisamment léger et rapide, pour la transmission de documents distribués et multimédia à travers un système d’information multi-utilisateurs. HTTP à été utilisé à l’initiative du Word-Wide Web dès 1990. Cette spécification décrit les fonctionnalités le plus souvent rencontrées dans les implémentation « client/serveur HTTP/1.0 ». Elle est divisée en deu x section. Les fonctions usuellement exploitées de HTTP sont décrites dans le corps de ce document. Les autres fonctions, moins utilisées sont listées dans l’annexe D.
1.2 Terminologie
Cette spécification utilise un certain nombre de termes pour désigner les participants et les objets d’une communication HTTP.
Connexion
Un circuit virtuel s’appuyant sur une couche de transport pour la communication d’information entre deux applications.
Message
L’unité de base d’une communication HTTP, consistant en une séquence structurée d’octets définie à la Section 4 et transmis via la connexion.
Requête
Un message de requête HTTP (défini en Section 5).
Réponse
Un message de réponse HTTP (défini en Section 6).
1.3 Fonctionnement global
Le protocole HTTP est basé sur un paradigme requête/réponse. Un client étab lit une connexion vers un serveur et lui envoie une requête sous la forme d’une méthode, d’une URI, du numéro de version, suivi d’un message de type MIME contenant les modificateurs de la requête, les informations sur le client, et éventuellement un corps. Le serveur répond par une ligne d’état, incluant la version de protocole et un message de succès ou d’erreur, suivi d’un message de type MIME contenant l’information sur le serveur, metainformation, et le corps éventuel.
La plupart des communications HTTP sont initiées par un utilisateur et consistent en une requête devant être appliquée (il s’agit d’une méthode) à une ressource sur son serveur origine. Dans le cas le plus simple, ceci peut être réalisé par une connexion simple (v) entre l’utilisateur (UA) et le serveur origine (O).
1.4 HTTP et MIME
HTTP/1.0 exploite un grand nombre d’implémentation prévues pour les MIME, tels que définis dans la RFC 1521 [5]. L’appendice C décrit comment HTTP l’utilisation des « Internet Media Types » typiquement utilisés par la messagerie électronique, et indique les différences de comportement.
2. Conventions de notation et Grammaire générique
2.1 BNF étendue
Tous les mécanismes évoqués sont décrits en prose et sous forme Backus-Naur étendue (BNF) similaire à celle utilisée dans la RFC 822 [7]. Les développeurs devront être familiarisés avec cette notation afin de comprendre cette spécification. La notation Backus-Naur comprend les allégations suivantes :
nom = définition
Le nom d’une règle est le nom lui-même (sans « < » ni « > » englobants) et est séparé de sa définition par le symbole « = ». Le caractère espace n’a de signification que lorsqu’un retrait indique qu’une définition s’étend sur plusieurs lignes. Certaines règles de base sont en majuscules, comme SP, LWS, HT, CRLF, DIGIT, ALPHA, etc. Les ouvertures et fermetures « < » et « > » ne sont utilisées que lorsqu’une discrimination des règles est indispensable à l’intérieur d’une définition.
2.2 Règles de base
Les règles de base suivantes seront utilisées tout au long de ce document dans les séquences de recherche. La table de caractères ASCII-US est définie par [17].
OCTET = <toute donnée codée sur 8 bits>
CHAR = <tout caractère ASCII-US (0 à 127)>
UPALPHA = <Tout caractère alphabétique ASCII-US majuscule « A ».. »Z »>
LOALPHA = <Tout caractère alphabétique ASCII-US minuscule « a ».. »z »>
ALPHA = UPALPHA | LOALPHA
DIGIT = <tout digit ASCII-US « 0 ».. »9″>
CTL = <Tous caractère de contrôle ASCII-US (0 à 31) et DEL (127)>
CR = <CR ASCII-US, retour chariot (13)>
LF = <LF ASCII-US, saut de ligne (10)>
SP = <SP ASCCII-US, espace (32)>
HT = < HT ASCII-US, tabulation horizontale (9)>
<« > = <double guillemet ASCII-US (34)>

…….

Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Comprendre le protocole HTTP protocole de communication (2762 KO) (Cours DOC)
Comprendre le protocole HTTP

Télécharger aussi :

Laisser un commentaire

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