Heim  >  Artikel  >  Was passiert, wenn der Browser die Adresse eingibt?

Was passiert, wenn der Browser die Adresse eingibt?

angryTom
angryTomOriginal
2019-10-24 17:24:4412496Durchsuche

Was passiert, wenn der Browser die Adresse eingibt?

Was passiert nach der Eingabe der Adresse im Browser

Der Browser ist für uns ein Tool zum Surfen im Internet. Normalerweise schauen wir uns Videos an Das Surfen im Internet ist untrennbar damit verbunden. Wissen Sie also, was der Browser tut, nachdem Sie die Eingabetaste in der Adressleiste des Browsers gedrückt haben?

Schritt 1: Geben Sie den Domainnamen im Browser ein

Geben Sie beispielsweise ein: www.php.cn

Was passiert, wenn der Browser die Adresse eingibt?

Schritt 2: Der Browser sucht nach der IP-Adresse des Domänennamens

Der Browser analysiert den eingegebenen Domänennamen Die entsprechende IP. Der Vorgang ist wie folgt:

1 Durchsuchen Sie den Browser-Cache: Da Browser DNS-Einträge im Allgemeinen für einen bestimmten Zeitraum zwischenspeichern, kann die Zeitspanne bei verschiedenen Browsern unterschiedlich sein und normalerweise zwischen 2 und 30 liegen Minuten. Wenn ein Cache vorhanden ist, geben Sie die IP direkt zurück, andernfalls fahren Sie mit dem nächsten Schritt fort.

2. Durchsuchen Sie den Systemcache: Nachdem die IP nicht im Browsercache gefunden wurde, führt der Browser einen Systemaufruf durch (gethostbyname in Windows), um nach der Hosts-Datei des lokalen Computers zu suchen. Die IP wird direkt zurückgegeben, andernfalls Nächster Schritt.

3. Durchsuchen Sie den Router-Cache: Wenn die Abfrage in den Schritten 1 und 2 fehlschlägt, müssen Sie das Netzwerk verwenden. Der Router verfügt im Allgemeinen über einen eigenen DNS-Cache und sucht den ISP Dienstanbieter-Cache-DNS-Server, wenn die IP gefunden wird, wird sie direkt zurückgegeben, wenn nicht, fahren Sie mit der Suche fort.

4. Rekursive Abfrage: Wenn die oben genannten Schritte nicht gefunden werden können, führt der DNS-Server des ISP eine rekursive Abfrage durch, wenn der vom Host abgefragte lokale Domänennamenserver dies nicht weiß Wenn Sie die IP-Adresse des abgefragten Domänennamens angeben, sendet der lokale Domänennamenserver als DNS-Client weiterhin Abfrageanforderungsnachrichten an andere Root-Domänennamenserver, anstatt den Host die nächste Abfrage selbst durchführen zu lassen. (Die Adresse des lokalen Domänennamenservers wird über das DHPC-Protokoll abgerufen, und DHPC ist für die Zuweisung von IP-Adressen verantwortlich.)

5. Iterative Abfrage: Der lokale Domänennamenserver verwendet zunächst eine iterative Abfrage Server. Die Abfrage des lokalen Domänennamenservers an den Stammdomänennamenserver erfolgt im Allgemeinen über eine iterative Abfrage. Die sogenannte iterative Abfrage bedeutet, dass der Stammdomänennamenserver, wenn er die vom lokalen Domänennamenserver gesendete Abfrageanforderungsnachricht empfängt, dem lokalen Domänennamenserver entweder mitteilt, welchen Domänennamenserver er als nächstes abfragen soll, und dann den lokalen Domänennamen Der Server führt nachfolgende Abfragen selbstständig durch. (anstatt den lokalen Nameserver für nachfolgende Abfragen zu ersetzen).

Schritt 3: Stellen Sie eine TCP-Verbindung zwischen dem Browser und dem Zielserver her

1 Nachdem der Host-Browser die IP-Adresse des Zielservers durch DNS-Auflösung erhält, Es stellt eine TCP-Verbindung mit der Server-TCP-Verbindung her.

2. TCP-3-Wege-Handshake-Verbindung: Der Client, auf dem sich der Browser befindet, sendet eine Verbindungsanforderungsnachricht an den Server (SYN-Flag ist 1). sendet eine Bestätigungsnachricht an den Client (SYN- und ACK-Flag-Bits sind beide 1); nach dem Empfang der Bestätigungsnachricht sendet der Client erneut eine Nachricht an den Server, um zu bestätigen, dass die Bestätigungsnachricht hier empfangen wurde und der Server wird eingerichtet und der Prozess beginnt mit der Kommunikation.

Schritt 4: Der Browser sendet eine Anfrage über das http-Protokoll

Der Browser initiiert eine Nachrichtenanforderung der HTTP-GET-Methode an den Host. Die Anfrage enthält die aufgerufene URL, also http://www.php.cn/, KeepAlive, lange Verbindung sowie User-Agent-Benutzerbrowser-Betriebssysteminformationen, Codierung usw. Erwähnenswert sind die Elemente Accept-Encoding und Cookies. Accept-Encoding verwendet im Allgemeinen gzip, um HTML-Dateien nach der Komprimierung zu übertragen. Wenn zum ersten Mal auf Cookies zugegriffen wird, wird der Server aufgefordert, Benutzer-Cache-Informationen zu erstellen. Andernfalls können Sie den entsprechenden Schlüsselwert von Cookies verwenden, um den entsprechenden Cache zu finden .

Schritt 5: Einige Dienste führen permanente Weiterleitungsantworten aus.

Bei großen Websites mit mehreren Hostseiten kann der Lastausgleich oder das Importieren von Datenverkehr das SEO-Ranking verbessern, was oft nicht direkt zum Erfolg führt die angeforderte Seite, aber umleitend. Der zurückgegebene Statuscode ist nicht 200OK, sondern ein Umleitungscode, der mit 301.302 beginnt. Nachdem der Browser die Umleitungsantwort erhalten hat, findet er die Umleitungsadresse im Element „Standort“ in der Antwortnachricht und der Browser kann im ersten Schritt erneut darauf zugreifen. .

Die Rolle der Umleitung: Die Umleitung dient dem Lastausgleich oder dem Import von Datenverkehr, um SEO-Rankings zu verbessern. Durch die Verwendung eines Front-End-Servers zum Annehmen von Anfragen und deren anschließendes Laden auf verschiedene Hosts kann die Umleitung des Zugriffs von mehreren Domainnamen auf eine Site erheblich verbessert werden werden von Suchmaschinen als zwei Websites betrachtet und die Anzahl der Links zu jeder wird reduziert, wodurch das Ranking sinkt. Durch eine dauerhafte Weiterleitung werden die beiden Adressen verknüpft, und Suchmaschinen werden sie als dieselbe Website betrachten, wodurch das Ranking verbessert wird .

Schritt 6: Der Browser verfolgt die Umleitungsadresse

Wenn der Browser die endgültige Zugriffsadresse nach der Umleitung kennt, senden Sie erneut eine http-Anfrage und senden Sie den Inhalt wie oben .

Schritt 7: Der Server verarbeitet die Anfrage

Der Server empfängt die Get-Anfrage, verarbeitet sie und gibt eine Antwort zurück.

Schritt 8: Der Server sendet eine HTML-Antwort

Statuscode 200 OK zurückgeben, was darauf hinweist, dass der Server aufgrund des Inhalts auf die Anfrage antworten und die Nachricht zurückgeben kann -type im Header Für „text/html“ stellt der Browser es als HTML dar, anstatt die Datei herunterzuladen.

Schritt 9: Geben Sie die TCP-Verbindung frei

1. Der Host, auf dem sich der Browser befindet, sendet eine Verbindungsfreigabenachricht an den Server und stoppt dann das Senden von Daten

2. Nach Erhalt der Freigabenachricht sendet der Server eine Bestätigungsnachricht und sendet dann die nicht übertragenen Daten an den Server

3. Nachdem die Serverdatenübertragung abgeschlossen ist, sendet er eine Verbindung Freigabenachricht an den Client;

Nach Erhalt der Nachricht sendet der Client eine Zeit lang, bevor er die TCP-Verbindung freigibt : Der Browser zeigt die Seite an

Wenn der Browser nicht alle HTML-Dokumente vollständig akzeptiert hat, hat er bereits mit der Anzeige dieser Seite begonnen. Der Browser empfängt das zurückgegebene Datenpaket und rendert die entsprechenden Daten entsprechend der Rendering-Mechanismus des Browsers. Die gerenderten Daten führen das entsprechende Seitenrendering und die Schrittinteraktion durch.

Schritt 11: Der Browser sendet und empfängt andere in HTML eingebettete Inhalte

Zum Beispiel einige Stildateien, Bild-URLs, JS-Datei-URLs usw. an den Browser Die Anforderung wird über diese URLs erneut gesendet. Der Anforderungsprozess ist immer noch ein Prozess, der dem Lesen von HTML, dem Abfragen des Domänennamens, dem Senden der Anforderung, der Umleitung usw. ähnelt. Diese statischen Dateien können jedoch im Browser zwischengespeichert werden. Manchmal wird auf diese Dateien direkt aus dem Cache zugegriffen, ohne den Server zu durchlaufen. Einige Websites verwenden auch CDNs von Drittanbietern, um diese statischen Dateien zu hosten.

Das obige ist der detaillierte Inhalt vonWas passiert, wenn der Browser die Adresse eingibt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn