Maison Opération et maintenance Sécurité Explication détaillée du protocole HTTP

Explication détaillée du protocole HTTP

Nov 29, 2019 am 10:08 AM
http 协议

Explication détaillée du protocole HTTP

1. Introduction au protocole HTTP

Le protocole http (Hypertext Transfer) est le plus utilisé sur Internet . Protocole réseau, principalement utilisé pour les services Web, qui est implémenté par des ordinateurs traitant des informations textuelles au format HTML (Hypertext Markup Language).

2. Version du protocole Http :

Version 0.9 : ne prend en charge que les pages HTML (a été éliminée) ; 1.0 :
(1) Présentation du mécanisme MIME (MultiPurpose Internet Mail Extensions), qui vous permet d'envoyer des messages multimédias
(2) Présentation du mécanisme keep-alive pour prendre en charge la fonction de lien persistant (mais ce The keep -le principe vivant est formé en ajoutant un certain champ à l'en-tête, et cette fonction n'est pas prise en charge nativement
(3) Introduction de la fonction de prise en charge des pages en cache
Version 1.1 : Une mise à niveau vers la version 1.0, prenant en charge ; plus Demander le mode de connexion, optimiser les liens persistants et optimiser la mise en cache des pages
Version 2.0 : Fournit une transmission optimisée sémantique http et ajoute une technologie spdy. Technologie Spdy : une technologie introduite par Google qui peut accélérer l'interaction des données http, en particulier l'utilisation du mécanisme d'accélération SSL, elle est communément appelée protocole https

Le plus couramment utilisé sur le Web ; Internet est actuellement en version HTTP2.0.

3. Types de pages Web courants :

Page statique :

Suffixes courants Le nom est :

  • Texte : html, htm, txt, css, doc

  • Image : gif, jpg, png

  • Vidéo : mp4, flv ;
  • Processus de demande, comme indiqué sur l'image :


Explication détaillée du protocole HTTPSocket est une couche d'abstraction entre la couche application et la couche transport. L'essence de socket est une interface de programmation (API). Elle résume les opérations complexes de la couche TCP/IP en plusieurs interfaces simples que la couche application peut appeler. pour réaliser le processus sur le réseau China Communications. TCP/IP n'est qu'une pile de protocoles, qui doit être implémentée spécifiquement et qui fournit également une interface d'opération externe (API). Il s'agit de l'interface Socket. Grâce à Socket, nous pouvons utiliser le protocole TCP/IP.

①Le client Web enregistre le socket auprès du noyau ;

②Le client envoie une demande de données au serveur Web via le navigateur

③Le serveur Web reçoit les informations de demande du client ; ;

④Si la ressource demandée par le client est locale sur le serveur, le service http demandera un appel au noyau système

⑤Le noyau appelle les données sur le disque local et envoie le les données au serveur ;

⑥http envoie la ressource demandée par l'utilisateur via le message de réponse, et répond enfin au client

Caractéristiques : elle est pré-écrite par le développeur et stockée dans ; le système de fichiers actuel. La vitesse de réponse est rapide et la maintenance de la page est gênante, l'interactivité des données est médiocre et facile à inclure par les moteurs de recherche

Page dynamique :

Les suffixes courants sont : php, jsp ; , asp, net...


Processus de demande :

Explication détaillée du protocole HTTPLa différence avec les pages statiques est que si l'utilisateur demande du contenu dynamique, alors le serveur http le fera appelez l'interpréteur back-end, et l'interpréteur back-end obtiendra les données du disque, les exécutera via l'interpréteur pour générer un fichier au format html. Ensuite, il est transformé en message de réponse et répond finalement à la demande du client.

Caractéristiques : le serveur Web lui-même ne prend pas en charge le traitement des pages dynamiques et un interpréteur spécial est nécessaire pour le compléter. Les données de la page sont modifiables, la maintenance des pages est relativement simple, la vitesse de réponse est lente, les données sont interactives. , et lors de l'accès à la page Contient des symboles spéciaux ? , %, & (symboles spéciaux) ne peuvent pas être inclus par les moteurs de recherche

Page pseudo-statique

 : déguiser les pages dynamiques en pages statiques et être incluses par les moteurs de recherche, consommant des ressources matérielles ; 🎜 >

4. Message du protocole HTTP :

message de requête : client → serveur

par Le client envoie une requête au serveur , et différents sites Web sont utilisés pour demander différentes ressources (documents HTML)

Format du message de demande :

Explication détaillée du protocole HTTP La ligne de demande :

est utilisée pour identifier la ressource demandée par le client, la méthode de requête utilisée, la ressource demandée et le protocole demandé. Ils sont directement séparés par des "espaces"

En-tête de requête :

La fonction est ; pour informer le serveur à travers le contenu pertinent demandé par le client (il peut y avoir plus d'un en-tête)

Ligne vierge :

Il y aura une ligne vide après l'en-tête de la requête, en envoyant un caractères de retour chariot et caractères de nouvelle ligne, utilisés pour informer le serveur que les informations d'en-tête de la requête n'apparaîtront plus dans le contenu suivant

Entité requérante :

Quel est le contenu spécifique de la page demandée ;

Message de réponse : Serveur → Client

Le serveur répond à la demande du client

Format du message de réponse :

Explication détaillée du protocole HTTP

Ligne de départ : La version du protocole http utilisée dans la réponse, le code d'état de la réponse et les brèves informations du code d'état

En-tête de réponse : Semblable à un message de demande, il y a généralement plusieurs champs d'en-tête après la ligne de départ. Chaque champ d'en-tête contient un nom et une valeur, séparés par des deux-points, et peut en contenir un ou plusieurs.

Ligne vierge : Il y a une ligne vide après les dernières informations d'en-tête de réponse. En envoyant des caractères de retour chariot et de saut de ligne, le client est informé qu'il n'y a aucune information d'en-tête sous la ligne vide. ;

Entité de réponse : Accéder réellement au contenu contenu dans la page

5. >Dans le processus de communication HTTP, chaque message de requête HTTP contiendra une méthode de requête HTTP, qui est utilisée pour informer le client de demander au serveur d'effectuer certaines opérations spécifiques. Méthodes de requête HTTP courantes : GET, POST, HEAD

Explication détaillée du protocole HTTPCode d'état HTTP

Aperçu du code d'état :

Description du code d'état commun :

Explication détaillée du protocole HTTP

Si le code d'état ci-dessus Si le les informations correspondantes ne sont pas trouvées, veuillez vous référer aux

Détails du code d'état HTTPExplication détaillée du protocole HTTP

7 Les éléments HTTP

incluent un HTTP. La requête et la réponse à la requête correspondante sont appelées une transaction HTTP. On peut également comprendre qu'une transaction HTTP est un processus complet de requête HTTP et de réponse HTTP. Par défaut, le protocole HTTP ouvre et ferme une nouvelle connexion pour chaque transaction, cela prend donc beaucoup de temps et de bande passante. En raison de la fonction de démarrage lent de TCP, les performances de chaque nouvelle connexion elle-même. sera réduit, de sorte que la limite supérieure du nombre de connexions parallèles pouvant être ouvertes est limitée. Par conséquent, il est préférable d'utiliser le mode de connexion persistante que de ne pas utiliser le mode de connexion persistante par défaut. Son avantage est que le temps consommé dans le processus de demande et de déconnexion TCP sera réduit.

8. Ressources HTTP

La ressource permet aux utilisateurs d'envoyer des messages au serveur via le navigateur ou l'agent utilisateur via le protocole HTTP Request. et obtenir du contenu, tel que des documents HTML, des images, etc. Type de ressource : balisé via MIME ;

Format : balise principale et cette balise

Types MIME courants :

Explication détaillée du protocole HTTP9. Introduction de l'URL

URL, le nom complet est Uniform Resource Location, la traduction chinoise est Uniform Resource Locator, également connue sous le nom d'adresse de page Web (site Web) . Comme un numéro de maison, il s'agit de l'adresse unique standard d'une ressource sur Internet. En termes simples, l'URL est une chaîne utilisée pour décrire les ressources d'informations sur Internet et est principalement utilisée dans divers programmes client et serveur www. Les URL peuvent utiliser un format unifié pour décrire diverses ressources d'informations, notamment des fichiers, des adresses de serveur et des répertoires, etc. À proprement parler, chaque URL est un URI, qui identifie une ressource Internet et spécifie une méthode pour l'utiliser ou obtenir la ressource. Le format de l'URL se compose des trois parties suivantes :

La première partie est le protocole, par exemple : http.

La deuxième partie est l'adresse IP ou le nom de domaine du serveur de ressources hôte (numéro de port), par exemple : www.kgc.cn

La troisième partie est l'adresse spécifique de la ressource hôte, tels que le répertoire et le nom de fichier, etc., par exemple : professeur/index.html

La première partie et la deuxième partie sont séparées par le symbole "://", et la deuxième partie et la troisième partie sont séparés par le symbole "/". Les première et deuxième parties sont indispensables, et la troisième partie peut être omise

10 Introduction à l'URI

URI (Uniform Resource Identifier) ​​It. est appelé le même identifiant de ressource en chinois. Il s'agit d'une chaîne utilisée pour identifier le nom d'une ressource Internet. Cette identification permet aux utilisateurs d'interagir avec la ressource via un protocole spécifique. Chaque ressource disponible sur le Web, y compris les documents HTML, les images, les clips vidéo, les programmes, etc., est localisée par un identifiant de ressource universel. Nous pouvons donc utiliser l'URI pour identifier le nom de chaque ressource ;

11. Comment http connecte-t-il plusieurs requêtes simultanément

Parce que http par défaut ? fonctionne selon le modèle de blocage, par défaut, une seule demande est reçue à la fois. Une fois la demande traitée, la demande suivante est reçue, elle ne peut donc être reçue qu'une par une.

Nous souhaitons donc répondre simultanément aux demandes des utilisateurs, ce qui nécessite un modèle multi-processus. Le serveur Web lui-même générera plusieurs processus enfants pour répondre aux demandes des utilisateurs. Autrement dit, lorsqu'une demande d'utilisateur est envoyée au serveur Web, le processus Web principal ne répondra pas directement à la demande de l'utilisateur, mais générera un processus enfant. pour répondre à la demande de l'utilisateur de cette manière, lorsque l'enfant traite après avoir établi une connexion avec cet utilisateur. Le processus principal du Web attendra la demande d'un autre utilisateur. Lorsque la deuxième demande de l'utilisateur arrivera, un processus enfant sera généré pour répondre à la deuxième demande de l'utilisateur. Et ainsi de suite. Ainsi, chaque demande utilisateur est gérée par un processus enfant.

Salle informatique CDN : La salle informatique CDN est utilisée pour stocker des ressources statiques

Si un utilisateur souhaite demander une donnée, il enverra une requête au serveur Web, puis répondra à le client, alors si des centaines de millions de personnes dans le monde demandent le serveur back-end, alors le serveur back-end ne sera pas en mesure de le gérer et la vitesse d'accès sera très lente. Ce sera la naissance d'un tel. une chose comme CDN, cdn Le contenu de la page sera stocké Lorsque le client accédera à une page, il visitera d'abord la salle informatique du CDN. Si la salle informatique du CDN n'a pas de cache, il reviendra à la source. puis mettez en cache une copie pour le CDN et présentez-la au client lors de sa prochaine visite. Il n'est pas nécessaire de revenir à la source, elle est accessible directement sur le CDN, ce qui réduit la pression sur le serveur back-end.

Tutoriels d'articles connexes : Tutoriel sur la sécurité Web

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Que signifie le code d'état http 520 ? Que signifie le code d'état http 520 ? Oct 13, 2023 pm 03:11 PM

Le code d'état HTTP 520 signifie que le serveur a rencontré une erreur inconnue lors du traitement de la demande et ne peut pas fournir d'informations plus spécifiques. Utilisé pour indiquer qu'une erreur inconnue s'est produite lorsque le serveur traitait la demande, ce qui peut être dû à des problèmes de configuration du serveur, à des problèmes de réseau ou à d'autres raisons inconnues. Cela est généralement dû à des problèmes de configuration du serveur, des problèmes de réseau, une surcharge du serveur ou des erreurs de codage. Si vous rencontrez une erreur de code d'état 520, il est préférable de contacter l'administrateur du site Web ou l'équipe d'assistance technique pour plus d'informations et d'assistance.

Comprendre les scénarios d'application courants de redirection de pages Web et comprendre le code d'état HTTP 301 Comprendre les scénarios d'application courants de redirection de pages Web et comprendre le code d'état HTTP 301 Feb 18, 2024 pm 08:41 PM

Comprendre la signification du code d'état HTTP 301 : scénarios d'application courants de redirection de pages Web Avec le développement rapide d'Internet, les exigences des utilisateurs en matière d'interaction avec les pages Web sont de plus en plus élevées. Dans le domaine de la conception Web, la redirection de pages Web est une technologie courante et importante, mise en œuvre via le code d'état HTTP 301. Cet article explorera la signification du code d'état HTTP 301 et les scénarios d'application courants dans la redirection de pages Web. Le code d'état HTTP 301 fait référence à une redirection permanente (PermanentRedirect). Lorsque le serveur reçoit le message du client

Comment utiliser Nginx Proxy Manager pour implémenter le saut automatique de HTTP à HTTPS Comment utiliser Nginx Proxy Manager pour implémenter le saut automatique de HTTP à HTTPS Sep 26, 2023 am 11:19 AM

Comment utiliser NginxProxyManager pour implémenter le saut automatique de HTTP à HTTPS Avec le développement d'Internet, de plus en plus de sites Web commencent à utiliser le protocole HTTPS pour crypter la transmission des données afin d'améliorer la sécurité des données et la protection de la vie privée des utilisateurs. Le protocole HTTPS nécessitant la prise en charge d'un certificat SSL, un certain support technique est requis lors du déploiement du protocole HTTPS. Nginx est un serveur HTTP et un serveur proxy inverse puissants et couramment utilisés, et NginxProxy

Qu'est-ce que le code d'état http 403 ? Qu'est-ce que le code d'état http 403 ? Oct 07, 2023 pm 02:04 PM

Le code d'état HTTP 403 signifie que le serveur a rejeté la demande du client. La solution au code d'état http 403 est la suivante : 1. Vérifiez les informations d'authentification. Si le serveur requiert une authentification, assurez-vous que les informations d'identification correctes sont fournies ; 2. Vérifiez les restrictions d'adresse IP. Si le serveur a restreint l'adresse IP, assurez-vous que les informations d'identification sont correctes. l'adresse IP du client est restreinte. Sur liste blanche ou non sur liste noire ; 3. Vérifiez les paramètres d'autorisation du fichier. Si le code d'état 403 est lié aux paramètres d'autorisation du fichier ou du répertoire, assurez-vous que le client dispose des autorisations suffisantes pour accéder à ces fichiers ou répertoires. etc.

Application rapide : analyse de cas de développement pratique du téléchargement HTTP asynchrone PHP de plusieurs fichiers Application rapide : analyse de cas de développement pratique du téléchargement HTTP asynchrone PHP de plusieurs fichiers Sep 12, 2023 pm 01:15 PM

Application rapide : analyse de cas de développement pratique de PHP Téléchargement HTTP asynchrone de plusieurs fichiers Avec le développement d'Internet, la fonction de téléchargement de fichiers est devenue l'un des besoins fondamentaux de nombreux sites Web et applications. Pour les scénarios dans lesquels plusieurs fichiers doivent être téléchargés en même temps, la méthode de téléchargement synchrone traditionnelle est souvent inefficace et prend du temps. Pour cette raison, utiliser PHP pour télécharger plusieurs fichiers de manière asynchrone via HTTP est devenu une solution de plus en plus courante. Cet article analysera en détail comment utiliser le HTTP asynchrone PHP à travers un cas de développement réel.

Solution d'erreur de requête http 415 Solution d'erreur de requête http 415 Nov 14, 2023 am 10:49 AM

Solution : 1. Vérifiez le type de contenu dans l'en-tête de la requête ; 2. Vérifiez le format des données dans le corps de la requête ; 3. Utilisez le format de codage approprié. 4. Utilisez la méthode de requête appropriée ;

Problèmes et solutions courants en matière de communication et de sécurité réseau en C# Problèmes et solutions courants en matière de communication et de sécurité réseau en C# Oct 09, 2023 pm 09:21 PM

Problèmes courants de communication réseau et de sécurité et solutions en C# À l'ère d'Internet d'aujourd'hui, la communication réseau est devenue un élément indispensable du développement logiciel. En C#, nous rencontrons généralement certains problèmes de communication réseau, tels que la sécurité de la transmission des données, la stabilité de la connexion réseau, etc. Cet article abordera en détail les problèmes courants de communication réseau et de sécurité en C# et fournira les solutions correspondantes et des exemples de code. 1. Problèmes de communication réseau Interruption de la connexion réseau : pendant le processus de communication réseau, la connexion réseau peut être interrompue, ce qui peut entraîner

Comment implémenter le streaming HTTP en utilisant C++ ? Comment implémenter le streaming HTTP en utilisant C++ ? May 31, 2024 am 11:06 AM

Comment implémenter le streaming HTTP en C++ ? Créez un socket de flux SSL à l'aide de Boost.Asio et de la bibliothèque client asiohttps. Connectez-vous au serveur et envoyez une requête HTTP. Recevez les en-têtes de réponse HTTP et imprimez-les. Reçoit le corps de la réponse HTTP et l'imprime.

See all articles