Was ist HTTP 304 Not Modified?
HTTP-Statuscode 304 Nicht geändert zeigt an, dass die Ressource, auf die Sie zugreifen möchten hat sich seit Ihrer letzten Anfrage nicht geändert. In diesem Fall sendet der Server den Inhalt nicht erneut, sondern erwartet, dass der Browser eine Version anzeigt, die bereits in seinem Cache gespeichert ist.
Der Statuscode 304 wird verwendet, um unnötige Datenübertragungen zu vermeiden, da der Client die angeforderte Ressource bereits lokal gespeichert hat. Dies reduziert den Bandbreitenverbrauch und beschleunigt das Laden von Seiten oder Ressourcen.
HTTP 304 Not Modified gehört 3xx HTTP-Statuscodegruppe, wobei:
- Anzahl 3 bedeutet Umleitung
- xx präsentiert zusätzliche Ziffern, die den Status der HTTP-Anfrage genauer beschreiben
Wie funktioniert HTTP 304 Not Modified?
HTTP 304 Not Modified gilt als Shape Client-Umleitung, da die Verarbeitung auf der Client-Seite erfolgt, d. h. auf dem Gerät oder System des Benutzers.
Der Prozess beginnt, wenn ein Client, wie ein Webbrowser oder Webcrawler, eine HTTP-Anfrage an einen Server sendet. In diesem Beispiel bittet der Kunde um Zugriff auf die Website auf yourdomain.com. Der Server prüft dann, ob sich die angeforderte Ressource seit dem letzten Zugriff des Clients auf die Seite geändert hat.
Wenn es keine Änderung gab, gibt der Server die Antwort zurück 304 Nicht geändert ohne erneute Einreichung von Inhalten. Der Browser lädt dann die bereits gespeicherte Version aus dem Cache, was zu einer schnelleren Seitenansicht und weniger Serverlast führt.
GET /index.html HTTP/1.1-Host: yourdomain.com
Wenn der Kunde eine Anfrage sendet Zum ersten Mal, der Server stimmt mit dem Code überein 200 OK i ETag Das Etikett. Die angeforderte Ressource wird dann in den Text der Nachricht aufgenommen.
HTTP/1.1 200 OK ETag:92g93nb790256hwp72b9
ETag (abgekürzt von Entity-Tag) ist ein HTTP-Response-Header, der aus einer Reihe von Zahlen, Buchstaben und Symbolen besteht, die dazu dienen, eine bestimmte Version der an den Client gesendeten Ressource zu identifizieren. ETag ändert sich jedes Mal, wenn eine Ressource aktualisiert wird.
Wenn der Client eine Anforderung für den Zugriff auf dieselbe Ressource erneut einreicht, wird ein Header in die Anforderung aufgenommen. Wenn-None-Match. Dieser Header enthält das ETag, das der Server beim vorherigen Besuch an den Client gesendet hat.
Einige Clients können auch einen Header enthalten If-Modified-Seit, die den Zeitpunkt des letzten Antrags enthält.
GET /index.html HTTP/1.1-Host: Deinedomain.com If-None-Match: 92g93nb790256hwp72b9 If-Modified-Seit: Fr, 19 Apr 2024 12:00:59 GMT
Server vergleicht dann Header-Werte Wenn-None-Match i If-Modified-Seit mit den Daten, die er gespeichert hat. Wenn die Werte übereinstimmen, sendet der Server die Ressource nicht. Stattdessen antwortet es mit einem Statuscode 304 Nicht geändert, was darauf hinweist, dass sich die Ressource seit dem letzten Kundenbesuch nicht geändert hat.
HTTP/1.1 304 Nicht geändert
Wenn der Client ein Internetbrowser ist, zeigt er dem Besucher eine Version der Ressource an, die sich bereits in seinem Cache befindet. Wenn der Kunde eine Suchmaschine wie Google ist, verwendet er eine Version des Inhalts, den er zuvor gespeichert hat.
Es ist wichtig zu beachten, dass der Header Wenn-None-Match hat Vorrang vor If-Modified-Seit. Immer noch, If-Modified-Seit Es wird häufiger verwendet, weil es einfacher zu implementieren ist.
So verwendet der Googlebot HTTP 304 Not Modified
Google unterstützt Header If-Modified-Seit i Wenn-None-Match und erwartet, dass der Server den Statuscode wiederherstellt 304 Nicht geändert wenn sich der Inhalt seit dem letzten Besuch des Googlebots nicht geändert hat.
Google enthält diese Header jedoch nicht bei jeder Anfrage, wenn Sie Ihre Website indizieren. Es verwendet sie nur, wenn es sie für einen bestimmten Crawl für notwendig hält.
Selbst in Fällen, in denen Google diese Header nicht sendet, kann der Server so konfiguriert werden, dass er die Antwort an den Googlebot zurückgibt. 304 Nicht geändert wenn der Inhalt seit seinem letzten Besuch nicht geändert wurde.
SEO Vorteile von Status Code 304 Nicht geändert
Statuscode 304 Nicht geändert Unterstützung bei der Verwaltung der c. Crawl-Budget. Das Crawl-Budget gibt die maximale Anzahl von Seiten an, die eine Suchmaschine innerhalb eines bestimmten Zeitraums auf Ihrer Website anzeigen kann.
Wenn Suchmaschinen eine Website indizieren, verbrauchen sie Serverressourcen und Bandbreite. Wenn sie Ihre Website zu oft besuchen, können sie den Server unnötig belasten, was zu einer Verlangsamung der Website oder sogar zu einer vorübergehenden Nichtverfügbarkeit führen kann.
Um dies zu vermeiden, bewerten Suchmaschinen die Kapazität des Servers und bestimmen auf dieser Grundlage das Crawl-Budget, wodurch versucht wird, die Leistung der Website und die Qualität der Benutzererfahrung zu erhalten.
Für kleinere Websites ist das Crawl-Budget in der Regel kein Problem. Relevant wird der Code von Seiten mit 10.000 oder mehr eindeutigen URLs oder der Code von Seiten, deren URLs als Entdeckt – nicht indexiert Google Search Console.
Es ist wichtig zu beachten, dass die geschätzte Serverkapazität, die von Google verwendet wird, nicht mit der tatsächlichen Kapazität Ihres Servers übereinstimmen muss. Google bestimmt es nach eigenen Kriterien und ist oft konservativer als die eigentlichen Serverfähigkeiten.
Weitere Vorteile des Statuscodes 304 Nicht geändert
Neben SEO-Vorteilen, Statuscode 304 Nicht geändert Es bringt auch greifbare Vorteile für Besucher und Suchmaschinen.
Besucher verbrauchen weniger Daten, da der Inhalt nicht erneut vom Server heruntergeladen wird, sondern aus dem Browser-Cache geladen wird. Dadurch können Sie die Seite auch schneller laden.
Suchmaschinen hingegen nutzen große Mengen an Ressourcen, um das Internet zu indizieren. Da diese Ressourcen nicht unbegrenzt sind, verhindert der Statuscode 304, dass sie Ressourcen erneut für das Hochladen von Inhalten ausgeben, die sich nicht geändert haben.
