Hallo!
Nach einer langen Pause melde ich mich zurück und möchte euch nun die Funktionsweise eines Webservers erklären.
Ein Webserver besteht im Prinzip nur aus einem Sender/Client, Empfänger/Server und einer gemeinsamen Sprache, dem Protokoll.
Client
Bei einem Webserver ist der Client normalerweise ein Browser, wie beispielsweise Chrome oder Firefox. Dieser sendet über einen Socket einen Datenstrom(die HTTP-Anfrage) an den Webserver, welcher normalerweise über Port 80 erreichbar ist. Dieser Port ist auch in den Browsern als Standard HTTP-Port definiert.
Server
Der Webserver ist der Dienst, der auf Anfragen(engl. requests) wartet und diese auch entgegen nimmt. Wenn eine Anfrage eingetroffen ist, wird diese ausgewertet und die entsprechenden Daten werden an den Client zurückgeschickt.
Protokoll
Das HTTP(Hypertext Transfer Protocol) ist die Sprache, die von Client und Server gesprochen wird. Damit etwas passieren kann muss eine Anfrage vom Client stattfinden, wie beispielsweise ein GET-Kommando, dass wie folgt aussieht:
|
|
GET /datei.html http/1.1
Host: netw0rk.eu
Accept: text/html
Connection: Keep-Alive |
Mit dieser Zeile fragt man auf dem Webserver von dem Host “netw0rk.eu” nach der Datei “datei.html”.
Eine typische Antwort vom Server sähe jetzt wie folgt aus:
|
|
HTTP/1.1 200 OK
Date: Mon, 23 Apr 2012 18:03:12GMT
Server: Netw0rk.eu Webserver
Last-Modified: Mon, 23 Apr 2012 12:32:02GMT
Keep-Alive: timeout=15
Connection: Keep-Alive
Content-Type: text/html
<html>
--- Content ---
</html> |
Im ersten Abschnitt ist die Statuszeile, diese sagt in unserem Fall, dass die Datei gefunden wurde.
Der zweite Block beinhaltet den sogenannten HTTP-Header, dort stehen Informationen zum Webserver und der angeforderten Datei.
Im letzten Block steht dann der Content. Dieser ist im Normalfall, die eigentliche Datei.
Es ist zu beachten, dass die Blöcke durch ein Return getrennt sein müssen, da manche Browser an diesem Return die Blöcke auseinander halten.
Ich hoffe ich konnte alles gut rüberbringen, Fragen und Anregungen könnt ihr gerne in den Kommentaren hinterlassen!
Letzte Kommentare