Maison >Problème commun >Que se passe-t-il lorsque le navigateur saisit l'adresse

Que se passe-t-il lorsque le navigateur saisit l'adresse

angryTom
angryTomoriginal
2019-10-24 17:24:4412600parcourir

Que se passe-t-il lorsque le navigateur saisit l'adresse

Que se passe-t-il après avoir saisi l'adresse dans le navigateur

Le navigateur est un outil qui nous permet de surfer sur Internet. Nous regardons généralement des vidéos et. vérifier les informations. La navigation sur Internet en est indissociable, alors savez-vous ce que fait le navigateur après avoir appuyé sur la touche Entrée dans la barre d'adresse du navigateur ? Aujourd'hui, je vais partager avec vous le travail derrière le navigateur ?

Étape 1 : Saisissez le nom de domaine dans le navigateur

Par exemple, saisissez : www.php.cn

Que se passe-t-il lorsque le navigateur saisit ladresse

Étape 2 : Le navigateur recherche l'adresse IP du nom de domaine

Le navigateur analysera le nom de domaine saisi dans l'adresse IP correspondante. Le processus est le suivant :

1. Rechercher dans le cache du navigateur : étant donné que les navigateurs mettent généralement en cache les enregistrements DNS pendant un certain temps, l'heure des différents navigateurs peut être différente, allant généralement de 2 à 30. minutes. Le navigateur recherchera ces caches. S'il y a un cache, renverra directement l'adresse IP, sinon passez à l'étape suivante.

2. Rechercher dans le cache système : une fois que l'adresse IP n'est pas trouvée dans le cache du navigateur, le navigateur effectuera un appel système (gethostbyname sous Windows) pour rechercher le fichier hosts de la machine locale. l'IP sera renvoyée directement, sinon Étape suivante.

3. Rechercher dans le cache du routeur : Si la requête des étapes 1 et 2 échoue, vous devez utiliser le réseau. Le routeur dispose généralement de son propre cache DNS. Envoyez la requête précédente au routeur et recherchez le FAI. Serveur DNS de cache du fournisseur de services, si l'IP est trouvée, elle sera renvoyée directement, sinon continuez la recherche.

4. Requête récursive : si les étapes ci-dessus ne sont pas trouvées, le serveur DNS du FAI effectuera une requête récursive. La requête dite récursive signifie que si le serveur de noms de domaine local interrogé par l'hôte ne le sait pas. l'adresse IP du nom de domaine interrogé, le serveur de noms de domaine local continuera à envoyer des messages de demande de requête à d'autres serveurs de noms de domaine racine en tant que client DNS, au lieu de laisser l'hôte effectuer lui-même la requête suivante. (L'adresse du serveur de noms de domaine local est obtenue via le protocole DHPC, et DHPC est responsable de l'attribution des adresses IP)

5. Requête itérative : le serveur de noms de domaine local utilise une requête itérative. serveur. La requête du serveur de noms de domaine local adressée au serveur de noms de domaine racine utilise généralement une requête itérative. La requête dite itérative signifie que lorsque le serveur de noms de domaine racine reçoit le message de demande de requête envoyé par le serveur de noms de domaine local, soit il indique au serveur de noms de domaine local quel serveur de noms de domaine il doit interroger ensuite, puis le nom de domaine local. Le serveur effectue lui-même les requêtes ultérieures. (plutôt que de remplacer le serveur de noms local pour les requêtes ultérieures).

Étape 3 : Établissez une connexion TCP entre le navigateur et le serveur cible

1 Une fois que le navigateur hôte a obtenu l'adresse IP du serveur cible via la résolution DNS, il établit une connexion TCP avec la connexion TCP du serveur.

2. Connexion TCP à 3 voies : le client où se trouve le navigateur envoie un message de demande de connexion au serveur (l'indicateur SYN est 1 après avoir reçu le message, le serveur accepte d'établir la connexion et) ; envoie un message de confirmation au client (les bits des indicateurs SYN et ACK sont tous deux égaux à 1) ; après que le client a reçu le message de confirmation, il envoie à nouveau un message au serveur pour confirmer que le message de confirmation a été reçu ici, la connexion TCP entre le client ; Le client et le serveur sont établis et le processus commence la communication.

Étape 4 : Le navigateur envoie une requête via le protocole http

Le navigateur initie une requête de message de méthode HTTP-GET à l'hôte. La demande contient l'URL consultée, c'est-à-dire http://www.php.cn/, KeepAlive, une longue connexion, ainsi que des informations sur le système d'exploitation du navigateur utilisateur User-Agent, l'encodage, etc. Il convient de mentionner les éléments Accept-Encoding et Cookies. Accept-Encoding utilise généralement gzip pour transmettre les fichiers HTML après compression. Si vous accédez aux cookies pour la première fois, le serveur sera invité à établir les informations du cache utilisateur. Dans le cas contraire, vous pouvez utiliser la valeur de clé correspondante des cookies pour trouver le cache correspondant. Le cache stocke le nom d'utilisateur, le mot de passe et certains paramètres utilisateur. .

Étape 5 : Certains services émettront des réponses de redirection permanentes

Pour les grands sites Web avec plusieurs sites hôtes, l'équilibrage de charge ou l'importation de trafic peuvent améliorer le classement SEO, souvent sans retour direct la page demandée, mais en redirigeant. Le code d'état renvoyé n'est pas 200OK, mais un code de redirection commençant par 301,302. Une fois que le navigateur a obtenu la réponse de redirection, il trouve l'adresse de redirection dans l'élément Emplacement du message de réponse et le navigateur peut y accéder à nouveau dans la première étape. .

Le rôle de la redirection : la redirection sert à équilibrer la charge ou à importer du trafic pour améliorer les classements SEO. L'utilisation d'un serveur frontal pour accepter les demandes, puis les charger sur différents hôtes peut grandement améliorer les capacités de traitement commercial simultané du site ; la redirection peut également concentrer l'accès de plusieurs noms de domaine vers un seul site, car baidu.com, www.baidu com le feront. être considérés par les moteurs de recherche comme deux sites Web, et le nombre de liens vers chacun sera réduit, ce qui abaissera le classement. Une redirection permanente associera les deux adresses, et les moteurs de recherche les considéreront comme le même site Web, améliorant ainsi le classement. .

Étape 6 : Le navigateur suit l'adresse de redirection

Lorsque le navigateur connaît l'adresse d'accès finale après la redirection, renvoyez une requête http et envoyez le contenu Comme ci-dessus .

Étape 7 : Le serveur traite la requête

Le serveur reçoit la requête get, puis traite et renvoie une réponse.

Étape 8 : Le serveur envoie une réponse HTML

Retour du code d'état 200 OK, indiquant que le serveur peut répondre à la requête et renvoyer le message, car le contenu -tapez l'en-tête Pour "text/html", le navigateur le restitue au format HTML au lieu de télécharger le fichier.

Étape 9 : Libérez la connexion TCP

1. L'hôte sur lequel se trouve le navigateur envoie un message de libération de connexion au serveur, puis arrête d'envoyer des données ; 🎜>

2. Après avoir reçu le message de libération, le serveur envoie un message de confirmation, puis envoie les données non transmises sur le serveur

3. Une fois la transmission des données du serveur terminée, il envoie une connexion ; libérer le message au client ;

4. Après avoir reçu le message, le client envoie une confirmation, puis attend un certain temps avant de libérer la connexion TCP

Étape 10 ; : Le navigateur affiche la page

Lorsque le navigateur n'a pas entièrement accepté tous les documents HTML, il a déjà commencé à afficher cette page. Le navigateur reçoit le paquet de données renvoyé et restitue les données correspondantes en fonction. le mécanisme de rendu du navigateur. Les données rendues effectuent un rendu de page et une interaction de pas correspondants.

Étape 11 : Le navigateur envoie et obtient d'autres contenus intégrés au HTML

Par exemple, certains fichiers de style, URL d'images, URL de fichiers js, etc., le navigateur renverra la demande via ces URL. Le processus de demande est toujours un processus similaire à la lecture HTML, à l'interrogation du nom de domaine, à l'envoi de la demande, à la redirection, etc. Cependant, ces fichiers statiques peuvent être mis en cache dans le navigateur. Parfois, ces fichiers sont accessibles directement depuis le cache sans passer par le serveur. Certains sites Web utilisent également des CDN tiers pour héberger ces fichiers statiques.

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:
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