Start
/
Website-Hilfe
/
HTTP-Status-Codes
/
304 Statuscode - Was ist es und wie man es beheben kann?

304 Statuscode - Was ist es und wie man es beheben kann?

Der 304 “Not Modified” Statuscode ist einer dieser HTTP Statuscodes von denen Sie wahrscheinlich schon beim Surfen im Internet gehört haben. Einige HTTP-Codes sind beliebter und werden von Besuchern oft angetroffen, wie das 404 “Not Found” oder 504 “Gateway Timeout” Fehler. Zur gleichen Zeit sind andere verborgen und arbeiten im Hintergrund Ihres Browsers.

304 Statuscode ist einer von diesen. Es erfüllt seinen Zweck in der Kommunikation zwischen Webservern und Webclients. Versteckt für den Endbenutzer, bietet es Anweisungen zum Laden von Webseiten-Ressourcen.

Trotzdem werden HTTP-Codes oft mit Fehlern verwechselt, unabhängig von ihrer Art und nicht richtig behandelt, und der HTTP-Statuscode 304 ist keine Ausnahme.

Dieser Artikel wird die Dinge klarstellen und weitere Einblicke in den Status 304 “Nicht geändert” geben und wie Fehler behoben werden können, die dadurch verursacht werden.

Der HTTP-Statuscode 304, „Not Modified“, teilt dem Kunden mit, dass die angeforderte Ressource seit dem letzten Zugriff nicht verändert wurde. Dadurch kann der Browser seine im Cache gespeicherte Version verwenden, was Bandbreite spart und die Ladezeiten beschleunigt.

Somit reduziert der Statuscode 304 die Bandbreitennutzung, indem er Browser anweist, zwischengespeicherte Inhalte zu laden und wann neue Ressourcen herunterzuladen.

Wie 304 Statuscode funktioniert

Das folgende Beispiel beschreibt eine typische Interaktion zwischen einem Webserver und einem Browser mit einem 304 Antwortcode:

  1. Sie öffnen eine neue Website: Wenn Sie eine Website zum ersten Mal besuchen, sendet der Browser eine HTTP GET Anfrage an den Server für die gewünschte Ressource.
  2. Der Server gibt den ETag oder den Last-Modified-Header zurück: Der Server verarbeitet die HTTP-Anfrage und antwortet mit der Ressource zusammen mit HTTP-Antwort-Headern, die „ETag“ und/oder „Last-Modified“ enthalten. Diese Header repräsentieren den aktuellen Status oder die Version der Ressource.
  3. Ihr Browser speichert diese Header und lädt den Inhalt herunter: Der Browser speichert die “ETag” und/oder “Last-Modified” Header zusammen mit der Ressource in ihrem Cache. Der Inhalt ist jetzt auf Ihrem Gerät zwischengespeichert.`
    HTTP-Antwortcode 200
  4. Wenn Sie die Website das nächste Mal besuchen: Wenn Sie sie erneut besuchen oder der Browser den zwischengespeicherten Inhalt erneut überprüfen muss, sendet er eine bedingte GET-Anfrage. Diese Anfrage beinhaltet die If-None-Match Header mit dem zuvor gespeicherten ETag-Wert und/oder If-Modified-Since Header mit dem zuvor gespeicherten Datum der letzten Änderung.
  5. Der Server wertet die Header aus: Der Server empfängt die bedingte Anfrage und prüft den aktuellen Zustand der Ressource mit dem “ETag” und/oder “Last-Modified” ” Datum vom Browser bereitgestellt.
  6. Der Server reagiert basierend auf der Auswertung auf zwei verschiedene Arten:
    • Wenn das aktuelle “ETag” oder “Last-Modified” Datum mit den Werten des Browsers übereinstimmt (d.h. der Inhalt hat sich nicht geändert), der Server antwortet mit einem „304 Not Modified“ Statuscode. Der Browser verwendet weiterhin den zwischengespeicherten Inhalt.
    • Wenn das aktuelle “ETag” oder “Last-Modified” Datum nicht mit den angegebenen Werten übereinstimmt (der Inhalt hat sich geändert), antwortet der Server mit einem ` 200 OK` Statuscode. Dann sendet es die neue Version der Ressource. Der Browser aktualisiert seinen Cache, um Webseiten in ihrer neuesten Version, ETag und/oder ‘Last-Modified’ HTTP-Header zu speichern.
Wie 304 Status Code funktioniert

Was ist der Unterschied zwischen 304 und 200 HTTP Status Codes?

Die Statuscodes 200 OK und 304 Not Modified sind zwei mögliche Ergebnisse der gleichen Client-Anforderungen, die an einen Webserver gesendet werden. Während beide Codes eine erfolgreiche Interaktion darstellen, bieten sie unterschiedliche Anweisungen zum Umgang mit der angeforderten Ressource.

  • Der 200 OK Antwortcode enthält den Hauptteil der angeforderten Ressource (HTML-Dokument, JSON-Datei, Bild, etc.)
  • Die Antwort 304 Not Modified hat keinen Hauptteil und enthält nur Header. Diese Header informieren Browser, dass sie eine aktuelle Version der angeforderten Ressource haben und sie ihre gespeicherte Cache-Version verwenden können.
  • Der 200 Antwortcode ignoriert die zwischengespeicherten Ressourcen des Browsers und liefert die neueste Version der Ressource.

Wie man den HTTP 304 Status Code beheben kann

Eine veraltete zwischengespeicherte Ressource oder eine Fehlkonfiguration des Browsers kann das Laden der zwischengespeicherten Browserdaten verhindern. In diesem Fall können Sie beim Besuch von Webseiten auf Fehler stoßen.

Daher sollten Sie sich darauf konzentrieren, diese Art von Problemen zu lösen, anstatt zu versuchen, jeden nicht modifizierten HTTP-Code zu reparieren.

Unten finden Sie die gebräuchlichsten und effektivsten Lösungen.

Den Browser-Cache löschen

Oft können veraltete oder beschädigte Browserdaten die Kommunikation Ihres Browsers mit einem Webserver beeinträchtigen. Als Ergebnis kann es alle Arten von Fehlern ausspucken.

In vielen Fällen behebt das Leeren des Browser-Cache solche Fehler. Befolgen Sie die nachstehenden Schritte, um den Cache auf Chrome zu löschen.

  1. Öffnen Sie das Kebab (drei Punkte) Menü und wählen Sie Browserdaten löschen.

    Wie öffnet man die Optionen zum Löschen von Browserdaten in Google Chrome

  2. Um zwischengespeicherte Bilder und Dateien zu löschen, markieren Sie das Kästchen für Bilder und Dateien im Cache. Optional können Sie auch Cookies und den Browserverlauf löschen.
  3. Bestätigen Sie Ihre Auswahl, indem Sie Daten löschen drücken.
    Optionen zum Löschen von Browserdaten in Google Chrome
  4. Laden Sie die angeforderte Seite neu, um zu sehen, ob der Fehler behoben ist.

Den DNS Cache leeren

Ihr Computer speichert auch den DNS-Cache, der aus den DNS-Einstellungen von zuvor besuchten Websites besteht. Ein veralteter DNS-Cache kann beim Besuch von Webseiten zu allen möglichen Problemen führen.

Leeren Sie den DNS-Cache, um abgelaufene oder beschädigte DNS-Informationen loszuwerden. Um das zu tun, müssen Sie Terminal auf Mac oder Linux und Eingabeaufforderung auf Windows.

Nehmen wir zum Beispiel macOS. Um den DNS-Cache zu leeren, geben Sie den folgenden Befehl im Terminal ein.

sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

Nachdem Sie den Befehl ausgeführt haben, werden Sie aufgefordert, Ihr Administrator-Passwort (sudo) anzugeben.

Leeren des DNS-Cache auf dem Mac über das Terminal

HINWEIS! Sie müssen Administratorrechte (sudo) haben, um den DNS-Cache auf beiden Betriebssystemen (OS) zu leeren.

Folgen Sie den Anleitungen unten für Schritt-für-Schritt-Anleitungen zum Löschen des DNS-Cache auf verschiedenen Betriebssystemen (OS).

Browsererweiterungen deaktivieren

Browsererweiterungen eignen sich hervorragend, um die Grundfunktionen aller gängigen Browser zu erweitern. Aber in seltenen Fällen können sie verhindern, dass die zwischengespeicherte Ressource korrekt geladen wird.

Daher können Sie die Erweiterungen Ihres Browsers deaktivieren, um zu überprüfen, ob sie Störungen verursachen.

Befolgen Sie die nachstehenden Schritte, um die Chrome-Erweiterungen zu deaktivieren. Der Prozess auf anderen Browsern ist ähnlich.

  1. Öffnen Sie das Kebab-Menü > Erweiterungen > Erweiterungen verwalten.
    Wie man Erweiterungen in Google Chrome öffnet
  2. Klicken Sie auf den EIN/AUS-Schieberegler, um eine Erweiterung zu deaktivieren. Alternativ können Sie ungenutzte oder veraltete Erweiterungen mit der Schaltfläche Entfernen löschen.
    Erweiterungen in Google Chrome deaktivieren
  3. Als nächstes besuchen Sie die Webseite, die Fehler erzeugt hat. Wenn der Fehler weiterhin besteht, wiederholen Sie den Vorgang, bis die Seite erfolgreich geladen wurde.

Nach Weiterleitungen in der .htaccess Datei suchen

Falsche Weiterleitungsanweisungen können verhindern, dass Ihr Browser einen 304 HTTP-Antwortcode von einer Website korrekt verarbeitet. Wenn Sie also der Eigentümer der Website sind, sollten Sie Ihre Serverkonfigurationsdatei überprüfen, die Weiterleitungsanweisungen enthält.

Diese Datei ist .htaccess in Apache, der beliebtesten Webserver-Anwendung. Hier ist, wie man es inspiziert.

  1. Zugriff auf Ihre Website-Dateien über FTP oder Dateimanager. Wenn Sie ein SiteGround-Benutzer sind, gehen Sie zu Site Tools > Site > Dateimanager.
  2. Öffnen Sie das Stammverzeichnis Ihrer Website. Normalerweise ist es ihredomain.com/public_html.
    Wie greift man in Site Tools auf einen Website-Root-Ordner zu
  3. Suchen Sie die Datei .htaccess und bearbeiten Sie sie.

    Bearbeiten einer .htaccess-Datei

  4. Suchen Sie nach Umleitungsregeln. Sie werden normalerweise am Anfang der .htaccess-Datei platziert. Entfernen Sie sie, um zu testen, ob sie Sie am Laden der Website hindern.
    Weiterleitungen in .htaccess

WICHTIG! Erstellen Sie eine Sicherungskopie Ihrer .htaccess-Datei, bevor Sie sie bearbeiten. Auf diese Weise können Sie es sicher wiederherstellen, wenn Sie eine kritische Direktive löschen.

Die DNS-Server ändern

Computer erhalten die IP-Adressen von Websites von DNS-Servern. Wenn die DNS-Server-Kommunikation unterbrochen ist, kann Ihr Computer einen 304-Statuscode nicht richtig verarbeiten. Es könnte durch eine falsche DNS-Serveradresse oder ein temporäres Problem in Ihrem angegebenen DNS-Server verursacht werden.

Ändern Sie die Standard-DNS-Server mit anderen öffentlichen DNS-Servern. Zum Beispiel können Sie zu den DNS-Servern von Google wechseln, wenn Ihr ISP benutzerdefinierte verwendet.

Google DNS-Server
8.8.8.8
8.8.4.4

Die genaue Art, die DNS-Server zu ändern, hängt von Ihrem Betriebssystem (OS) ab. Unten finden Sie die Schritte für Windows und Mac.

Mac

  1. Öffnen Systemeinstellungen > Netzwerk.
  2. Wählen Sie Ihr aktives Netzwerk und klicken Sie auf Details.
    Netzwerkeinstellungen auf dem Mac
  3. Öffnen Sie die Registerkarte DNS.
  4. Klicken Sie auf das + Zeichen.
  5. Geben Sie die neue DNS-Serveradresse in das markierte Feld ein.
  6. Drücken Sie OK.
    Ändern der DNS-Server auf dem Mac
  7. Laden Sie die problematische Seite neu, um zu sehen, ob der Fehler verschwunden ist.

Windows

  1. Öffnen Sie das Windows Menü.
  2. Geben Sie “Systemsteuerung” in die Suchleiste ein.
  3. Klicken Sie auf das Systemsteuerung Symbol, das als erstes Suchergebnis erscheint.
  4. Wählen Sie Netzwerk und Internet > Netzwerk- und Freigabezentrum.
    Netzwerk- und Interneteinstellungen in Windows
  5. Klicken Sie auf Ihr aktives Netzwerk.
  6. Ein Pop-up-Fenster wird erscheinen. Klicken Sie auf die Schaltfläche Eigenschaften.
    Netzwerkeigenschaften in Windows
  7. Markieren Sie den Punkt Internet Protocol Version 4 (TCP/IPv4) und wählen Sie Eigenschaften.
  8. Wählen Sie die Option Folgende DNS-Serveradressen verwenden.
  9. Geben Sie die primäre DNS-Serveradresse in das Feld Bevorzugter DNS-Server ein.
  10. Geben Sie die Adresse des sekundären DNS-Servers in das Feld Alternativer DNS-Server ein.
  11. Bestätigen Sie die Einstellungen, indem Sie auf OK klicken.

    Ändern der DNS-Server in Windows

Ist HTTP 304 “Not Modified” Status Code fehlerhaft?

Nein, der HTTP 304 “Not Modified” Statuscode ist kein schlechter Code. Er zeigt nichts an, was mit Ihrem Browser oder dem Webserver einer Website nicht stimmt. Tatsächlich stellt es kein Problem dar und ist kein Fehlercode.

Im Gegenteil, sein Zweck ist es, die Benutzererfahrung für Website-Besucher zu verbessern. Anstatt den Inhalt jedes Mal herunterzuladen, können Webbrowser ihre zwischengespeicherten Daten verwenden, um Webseiten schneller zu rendern. Somit kann der Statuscode 304 Bandbreitennutzung, Zeit und Serverressourcen sparen.

Davon abgesehen behandeln viele Online-Tutorials den 304-Status als einen der Fehlercodes und konzentrieren sich darauf, ihn zu beheben, als ob das Ziel darin besteht, ihn loszuwerden. Das ist nicht richtig, und Sie sollten nicht darauf abzielen, den Statuscode 304 zu eliminieren. In der Tat werden Sie es wahrscheinlich überhaupt nicht auf Ihrem Bildschirm sehen.

Allerdings können verschiedene Cache-bezogene Probleme und Browser- / Geräte-Fehlkonfigurationen, die indirekt mit dem HTTP 304-Statuscode zusammenhängen, Ihre Verbindung zu bestimmten Websites behindern.

Zusammenfassung

Der HTTP 304 Statuscode ist ein integraler Bestandteil des Caching-Mechanismus des Webs, der im Allgemeinen die Geschwindigkeit und Effizienz des Surfens verbessert. Obwohl es nicht von Natur aus problematisch ist, können Fehlkonfigurationen dazu führen, dass der Inhalt nicht korrekt aktualisiert wird.

Indem Sie die oben beschriebenen Methoden zur Fehlerbehebung befolgen, können Sie die meisten Probleme im Zusammenhang mit dem 304-Statuscode beheben und sicherstellen, dass Sie die aktuellsten Webinhalte sehen.

Diesen Artikel teilen