Skip to main content

if-modified-since

Das Webprotokoll http verfügt in seinem Protokollkopf über sogenannte http-Headerfelder, die wichtige Argumente und Parameter für die Übertragung von Daten via http übermitteln. Eines dieser Felder ist if-modified-since, in dem ein Datum sowie eine Uhrzeit vermerkt werden kann. Dies erlaubt dem Server, den Statuscode 304 (“not modified”) an den Clientcomputer zu senden, falls es bis zur Anfrage keine Änderungen gegenüber dem Zeitpunkt der eingetragenen Werte gegeben hat. Zu Beginn der Ladephase der Webseite liest der lokale Browser die Headerfelder aus und setzt die Daten entsprechend ein. Der Server antwortet mit dem Statuscode 304, wenn der Client erklärt, dass er bereits einen älteren Stand der betroffenen Ressource besitzt.

Grund für den Statuscode 304

Das Laden der Webseiten soll so schnell wie möglich erfolgen. Jeder Wert, der den Vorgang beschleunigt, erhöht die Chancen auf bleibende Besucher. Mit dem gesetzten http-Headerfeld if-modified-since soll erreicht werden, dass der Clientbrowser im gegebenen Fall die bereits vorhandenen Dateien nicht noch einmal laden muss und stattdessen die lokal vorhandenen Ressourcen nutzt. Das ist insbesondere dann von Bedeutung, wenn die Webseite viele Bilder enthält, die lokal viel schneller geladen werden können.
Mit dem Headerfeld if-none-match gibt es eine weitere Möglichkeit, den Code 304 auszulösen. Die Syntax und die Erzeugung sind komplett anders. Trotzdem muss beim Programmieren darauf geachtet werden, es nicht mit if-modified-since zu verwechseln.

Entscheidung des Servers

Die endgültige Entscheidung liegt beim Server. Der Client übermittelt das gesetzte Headerfeld. Kann der Server keine Änderungen des Inhaltes feststellen, übermittelt er dem Browser den Statuscode 304.  Nun weiß der Client, er kann die betroffenen Dateien aus dem Cache entfernen. Bei diesen Transaktionen werden nur die Statusdaten und kein Content verschickt.

Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG

if-modified-since
4.3 (86.67%) 6 votes