3 Stimmen

Wie arbeiten der Browser und der Server zusammen, um eine HTML-Seite anzuzeigen?

Diese Frage höre ich oft =/

Aber ich kann sie nur auf einem sehr hohen Niveau beantworten.

Was passiert auf der Client- und der Serverseite, wenn ein Benutzer eine URL eingibt und die Eingabetaste drückt, und wie funktionieren die Anfragen/Antworten? Wie interagiert der Server mit CGI/Interpretern?

Es wäre auch hilfreich, wenn Sie mich auf eine URL verweisen könnten, die diese Informationen im Detail enthält, oder wenn Sie diese Frage beantworten können.

Wenn ich das den Leuten beschreibe, habe ich immer das Gefühl, dass sie nach Einzelheiten suchen und ich nicht genug darüber erzähle. Detail.

Danke!

3voto

BerggreenDK Punkte 4779
  1. Der Kunde initiiert die Kommunikation (in der Regel eine HTTP-GET-Anfrage)
  2. Der Server empfängt den REQUEST-HEADER und parst die darin enthaltene URL.
  3. Der Server prüft, ob eine URL lokal in einem Festplattenordner übereinstimmt. Wenn der Webserver mit virtuellen Servern wie Microsoft IIS arbeitet, bestimmt er den zu durchsuchenden Ordner, nachdem er den Teil "www.domain.com" aus dem REQUEST-Header abgerufen hat.
  4. Wenn ein Webdokument (HTML-Datei) gefunden wird, sendet der Server dies als RESPONSE + einen HTTP-Statuscode zurück (z. B. 200, was bedeutet: gefunden, die Anfrage war erfolgreich, während 404 bedeutet: "Die Datei wurde nicht gefunden").
  5. Der Client (Browser) erhält die RESPONSE und kann sie nun nach Belieben anzeigen. Wenn er eine Rendering-Engine enthält, sucht er nach Mustern (HTML-Tags oder welche Sprache auch immer) und zeigt sie dann als solche an.

Dies wird auch als "zustandslos" bezeichnet, da der Server die Kommunikation mit dem Client beendet, nachdem der Client alles aus dem Antwortstrom erhalten hat.

Daher kann der Server weder wissen, ob der Client noch verbunden ist, noch ob er später zurückkommt. Viele Server stellen ein Sitzungsobjekt zur Verfügung, das Cookies oder Ähnliches verwendet, um festzustellen, ob es sich um denselben Client handelt, der die nächste Anfrage sendet, und wenn ja, um "intelligentere" Serverantworten zu ermöglichen - z. B. Suchen, Transaktionen und Anmeldungen.

1voto

Reese Moore Punkte 11376

1voto

alex Punkte 457905

Der Client sendet Anfrage-Header an den Server (findet die IP über DNS).

Die Serversoftware (z. B. Apache) ruft CGI auf, wenn es erforderlich ist, und bereitet die Antwort vor.

Es sendet sowohl Kopfzeilen als auch den Inhalt zurück.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X