Was ist eine 304 Not Modified Response?
Der HTTP-Server-Antwortcode 304 Not Modified zeigt an, dass die angeforderte Ressource seit dem letzten Laden nicht mehr verändert wurde, was bedeutet, dass sie nicht erneut übertragen werden muss. Für Browser bedeutet dies, dass die zwischengespeicherte Version der Ressource dem Benutzer angezeigt werden kann. Für Crawler wie den Googlebot bedeutet dies, dass die Seite nicht neu gecrawlt werden muss, da sich nichts geändert hat.
Wie es funktioniert
Hier ist eine einfache Erklärung, wie die Antwort 304 Not Modified funktioniert:
-
Erste Anfrage Wenn der Client (Browser oder Crawler) zum ersten Mal eine Ressource vom Webserver anfordert, sendet der Server die angeforderte Ressource mit einem 200 OK HTTP-Code zusammen mit ihrem Hash-Code, ETag genannt. Der Client speichert auch den Zeitpunkt, zu dem er die Seite/Ressource angefordert hat.
-
Nachfolgende Anfragen Wenn der Client die Ressource erneut anfordert, überprüft der Server die
If-None-Match-
und/oderIf-Modified-Since-Header
des Clients. Dies wird als bedingte HTTP-Anforderung bezeichnet.If-None-Match
enthält den ETag (Hash-Code des Inhalts). Wenn er mit dem Wert auf dem Server übereinstimmt, bedeutet dies, dass sich der Inhalt nicht geändert hat und nicht erneut geladen werden muss (wenn sich der Inhalt ändert, ändert sich auch sein Hash-Code).If-Modified-Since
enthält das Datum und die Uhrzeit, zu der der Client den Inhalt zuletzt angefordert hat. Wenn der Server feststellt, dass sich der Inhalt seit diesem Datum nicht geändert hat, braucht er die Ressource nicht an den Client zu senden.
-
Serverantwort In beiden Fällen antwortet der Server mit dem HTTP-Code 304, wenn sich der Inhalt nicht geändert hat.
Wenn sowohl If-None-Match
als auch If-Modified-Since
verwendet werden, hat If-None-Match
Vorrang vor If-Modified-Since
.
Browser- und Crawler-Verhalten
Wenn der Browser den HTTP-Code 304 Not Modified vom Server erhält, zeigt er dem Benutzer die im Cache gespeicherte Version an, was zu den clientseitigen Umleitungscodes gehört. Für Crawler bedeutet eine 304-Antwort, dass sie das erneute Herunterladen desselben Inhalts vermeiden können, wodurch Bandbreite und Ressourcen gespart werden.
Warum ist der 304 Response Code wichtig?
Für kleine Websites sind die Vorteile der Zwischenspeicherung durch den HTTP-Code 304 möglicherweise nicht so bedeutend. Für große Websites bietet der Antwortcode 304 jedoch erhebliche Vorteile:
- Leistungsoptimierung Durch die Nutzung von im Cache gespeicherten Inhalten können Browser Seiten schneller laden, was die Benutzerfreundlichkeit insgesamt verbessert.
- Verwaltung des Crawl-Budgets Für große Websites ist die Verwaltung des Crawl-Budgets entscheidend. Der Crawler von Google wird Seiten, die sich nicht geändert haben, nicht erneut crawlen, so dass er sich auf neue und aktualisierte Inhalte konzentrieren kann. Auf diese Weise wird sichergestellt, dass frische Inhalte effizienter indiziert werden.
Best Practices für die Verwendung von 304 Not Modified
- Stellen Sie sicher, dass Ihr Server so konfiguriert ist, dass er geeignete
ETag-
undLast-Modified-Header
sendet. - Überwachen Sie die Cache-Effizienz Überprüfen Sie regelmäßig Ihre Serverprotokolle, um festzustellen, wie oft 304-Antworten ausgegeben werden, und passen Sie die Cache-Richtlinien bei Bedarf an.
- Optimieren Sie die Bereitstellung von Inhalten. Verwenden Sie Content Delivery Networks (CDNs), die effiziente Caching-Mechanismen unterstützen, um Latenzzeiten zu reduzieren und Ladezeiten zu verbessern.
Ausführlichere Informationen zu HTTP-Statuscodes und Best Practices für Web-Performance und SEO finden Sie in zuverlässigen Quellen wie dem Mozilla Developer Network (MDN ) und den Web Fundamentals von Google.