Benutzer-Werkzeuge

Webseiten-Werkzeuge


kommunikation:http:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
kommunikation:http:start [2024/02/18 09:59] – [Aufgabe 3: Cookies aus Datenschutzsicht] Martin Pabstkommunikation:http:start [2024/11/21 07:05] (aktuell) – [Cookies zu Marketing- und Werbezwecken (third pary cookies)] Martin Pabst
Zeile 7: Zeile 7:
 {{ :kommunikation:http:request_response.png?800 |}} {{ :kommunikation:http:request_response.png?800 |}}
  
-===== Die wichtigsten Requestparameter =====+==== Die wichtigsten Requestparameter ====
  
   * **User-Agent**: Hier kann der Client mitteilen, welcher Browser die Anfrage sendet und in welchem Betriebssystem dieser läuft. Diese Information ist für Website-Betreiber wichtig, da sie so statistische Erkenntnisse darüber gewinnen, welche Browser/Betriebsssteme ihre User wie häufig verwenden und ihre Seite speziell für diese optimieren können.   * **User-Agent**: Hier kann der Client mitteilen, welcher Browser die Anfrage sendet und in welchem Betriebssystem dieser läuft. Diese Information ist für Website-Betreiber wichtig, da sie so statistische Erkenntnisse darüber gewinnen, welche Browser/Betriebsssteme ihre User wie häufig verwenden und ihre Seite speziell für diese optimieren können.
Zeile 16: Zeile 16:
   * **Cookie**: Der Client kann dem Server sogenannte Cookies (das sind Schlüssel-Wert-Paare) übermitteln, die der Server bei einem vorhergehenden Request beim Client hinterlegt hat. Näheres dazu siehe unten.   * **Cookie**: Der Client kann dem Server sogenannte Cookies (das sind Schlüssel-Wert-Paare) übermitteln, die der Server bei einem vorhergehenden Request beim Client hinterlegt hat. Näheres dazu siehe unten.
  
-===== Die wichtigsten Responseparameter =====+==== Die wichtigsten Responseparameter ====
   * **Date**: Datum und Uhrzeit der Antwort   * **Date**: Datum und Uhrzeit der Antwort
   * **Server**: Hier kann der Server angeben, welches Server-Programm zum Einsatz kommt und auf welchem Betriebssystem es läuft.   * **Server**: Hier kann der Server angeben, welches Server-Programm zum Einsatz kommt und auf welchem Betriebssystem es läuft.
-  * **Last-Modified**: Das ist der Zeitpunkt, an dem die übermittelte Datei zum letzten Mal verändert wurde. Der Client kann die Anfrage an den Server so senden, dass dieser zunächst nur den Response-Header (aber noch nicht die Datei) sendet. Liegt im **Cache** des Clients (siehe unten) die Datei vor und ist sie nicht älter als ''Last-Modified'', so kann der Client die Datei aus dem Cache verwenden und muss sie nicht zeitaufwändig vom Server holen. Das spart überdies Netzwerk-Bandbreite und Energie ( -> Umwelt!).+  * **Cache-Control**: [[#caching|Siehe unten]]
   * **Content-Length**: Das ist die Länge der nach dem Response-Header folgenden Daten in Byte. Der Client kann sie nutzen, um z.B. bei größeren Downloads einen Fortschrittsbalken anzuzeigen.   * **Content-Length**: Das ist die Länge der nach dem Response-Header folgenden Daten in Byte. Der Client kann sie nutzen, um z.B. bei größeren Downloads einen Fortschrittsbalken anzuzeigen.
   * **Content-Type**: Per HTTP werden nicht nur Webseiten übertragen, sondern auch Bilder, pdf-Dateien, Sound, Videos usw. Mit diesem Parameter teilt der Server dem Client mit, welche Art von Daten er sendet. Die Abkürzungen der Datentypen (MIME-Types) [[https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types|finden Sie hier.]]   * **Content-Type**: Per HTTP werden nicht nur Webseiten übertragen, sondern auch Bilder, pdf-Dateien, Sound, Videos usw. Mit diesem Parameter teilt der Server dem Client mit, welche Art von Daten er sendet. Die Abkürzungen der Datentypen (MIME-Types) [[https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types|finden Sie hier.]]
Zeile 46: Zeile 46:
 </WRAP> </WRAP>
  
-<WRAP center round important 60%>+<WRAP center round important 80%>
 **Problem:** \\ **Problem:** \\
 HTTP ist zustandslos, viele Webseiten sind es aber nicht. Stellen Sie sich vor, sie kaufen in einem Online-Shop ein. Auf der Startseite geben Sie Ihren Benutzernamen und Ihr Passwort ein, dann klicken Sie auf "OK". Der Browser sendet die Daten jetzt per HTTP-Request an den Server, der liefert prüft ihre Zugangsdaten mithilfe Ihres Kundendatensatzes in seiner Datenbank und liefert eine Begrüßungsseite zurück ("Hallo Silvia, ..."). Da HTTP zustandslos ist, bleibt die Verbindung danach nicht erhalten. Beim nächsten Request an den Server (Sie klicken vielleicht auf ein Item, um es in den Einkaufskorb zu legen...) weiß dieser nicht mehr, dass der Request von Ihnen stammt.  HTTP ist zustandslos, viele Webseiten sind es aber nicht. Stellen Sie sich vor, sie kaufen in einem Online-Shop ein. Auf der Startseite geben Sie Ihren Benutzernamen und Ihr Passwort ein, dann klicken Sie auf "OK". Der Browser sendet die Daten jetzt per HTTP-Request an den Server, der liefert prüft ihre Zugangsdaten mithilfe Ihres Kundendatensatzes in seiner Datenbank und liefert eine Begrüßungsseite zurück ("Hallo Silvia, ..."). Da HTTP zustandslos ist, bleibt die Verbindung danach nicht erhalten. Beim nächsten Request an den Server (Sie klicken vielleicht auf ein Item, um es in den Einkaufskorb zu legen...) weiß dieser nicht mehr, dass der Request von Ihnen stammt. 
Zeile 59: Zeile 59:
 {{ :kommunikation:http:session-cookies.png?800 |}} {{ :kommunikation:http:session-cookies.png?800 |}}
  
-==== Cookies zu Marketing- und Werbezwecken (third pary cookies) ====+==== Cookies zu Marketing- und Werbezwecken (third party cookies) ====
 Das Geschäftsmodell von Firmen wie Google und Facebook beseht darin, Werbung zu vermarkten (online marketing). Dabei können sie für Werbebanner und Links in Suchergebnislisten umso mehr Gebühren verlangen, je besser die Nutzer, die die Werbung zu sehen bekommen, zum beworbenen Produkt/Service passen. Das Geschäftsmodell von Firmen wie Google und Facebook beseht darin, Werbung zu vermarkten (online marketing). Dabei können sie für Werbebanner und Links in Suchergebnislisten umso mehr Gebühren verlangen, je besser die Nutzer, die die Werbung zu sehen bekommen, zum beworbenen Produkt/Service passen.
  
Zeile 112: Zeile 112:
   * **a)** Welche Arten von Cookies sind aus Datenschutzgründen bedenklich? Warum?   * **a)** Welche Arten von Cookies sind aus Datenschutzgründen bedenklich? Warum?
   * **b)** Was können Sie als Nutzer/in tun, um sich zu schützen?   * **b)** Was können Sie als Nutzer/in tun, um sich zu schützen?
-  * **c)** Wie agieren die aktuellen Browserhersteller (Mozilla/Apple/Google/Microsoft) im Kontext von third party cookies? Welche Interessen verfolgen sie jeweils?+  * **c)** Wie agieren die aktuellen Browserhersteller (Mozilla/Apple/Google/Microsoft) ins Sachen third party cookies? Welche Interessen verfolgen sie jeweils? 
 + 
 + 
 +===== Caching ===== 
 +Liefert ein Server eine Ressource (z.B. eine HTML-Datei, eine Grafikdatei, ...) aus, so kann der Client sie auf seiner SSD zwischenspeichern. Falls der User dieselbe Webseite erneut besucht und der Browser die Ressource erneut braucht, kann er dann einfach die zwischengespeicherte Version von der SSD verwenden. Diesen Vorgang nennt man **caching**. Das beschleunigt nicht nur den Ladevorgang der Webseite (das Laden von der SSD geht viel schneller als das Holen vom Server), sondern ist auch umweltschonend, da jeder HTTP-Request/Response Energie verbraucht. \\ \\  
 +Aber was, wenn der Client ein Bild "affe.jpg" in seinem Cache hat, das älter ist als die aktuelle Version auf dem Webserver?  \\  
 +Zu diesem Zweck kann der Webserver dem Client beim Ausliefern von Ressourcen im Response-Header signalisieren, wie lange er sie höchstens cachen darf. So bedeutet der Response-Header 
 +<code> 
 +Cache-Control: max-age=604800 
 +</code> 
 +dass die entsprechende Ressource maximal 604800 Sekunden im Cache zwischengespeichert werden sollte. 
 + 
 +===== Weiterentwicklungen ===== 
 +==== HTTP/2 ==== 
 +Die neue Protokollversion HTTP/2 findet Stand 2024 langsam immer mehr Verwendung in Browsern und Webservern. Sie bietet folgende Performanceverbesserungen gegenüber HTTP/1.1: 
 +  * Auch Header können komprimiert werden. 
 +  * Fordert der Client eine Webseite an (z.B. http://www.csg-in.de/index.php) und weiß der Server, dass die Seite bestimmte Ressourcen (Bilder, ...) benötigt, so kann er sie dem Client mit dem Response gleich mitschicken ohne dass dieser sie erst extra anfordern muss. 
  
-===== Maßnahmen zur Verbesserung der Performance von HTTP ===== 
-==== Caching ==== 
  
kommunikation/http/start.1708250341.txt.gz · Zuletzt geändert: 2024/02/18 09:59 von Martin Pabst

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki