Die Website funktioniert aus dem Cache. Wie prüfen Sie den Origin-Server?

Eine gespeicherte Antwort kann ein Origin-Problem verdecken. So lesen Sie Cache-Header, bereiten einen direkten Test vor und prüfen CDN und Anwendung getrennt.

Blaue und orangefarbene Netzwerkkabel, die mit Geräten in einem schwarzen Rack verbunden sind
Fotografie: Dimitri Karastelev / Unsplash

Die Startseite lädt, doch neue Inhalte fehlen und dynamische Funktionen der Website schlagen fehl. Bei einem CDN oder einem Reverse Proxy mit Cache lohnt sich die Frage, woher die erfolgreiche Antwort stammt. Der Ursprungsserver, auch Origin genannt, muss diese Anfrage gar nicht bearbeitet haben. Diese Anleitung unterscheidet den öffentlichen Weg durch den Cache von der Origin-Prüfung; die curl-Beispiele verwenden Linux.

Sichern Sie Header und Umstände des erfolgreichen Tests

Verwenden Sie für eine lesende URL curl -sS -D - -o /dev/null https://example.com/ und ersetzen Sie die Domain durch Ihre eigene. Der Befehl zeigt Header und verwirft den Antwortkörper; prüfen Sie den Inhalt gesondert. Erfassen Sie Zeitpunkt, URL, Status und Cache-Control. Age schätzt die Zeit seit Erzeugung oder erfolgreicher Validierung der Antwort am Origin. Es ist kein Datum der letzten Inhaltsänderung. Auch fehlendes Age beweist keinen Origin-Kontakt.

Ergänzen Sie die Diagnoseheader des jeweiligen Anbieters. Bei Cloudflare bedeutet CF-Cache-Status: HIT, dass die Ressource in dessen Cache gefunden wurde. Prüfen Sie andere Header anhand der Dokumentation der eingesetzten Schicht. Skizzieren Sie den Anfrageweg durch CDN, Proxy und Anwendung. Leiten Sie aus der Antwort eines Caches nicht den Zustand aller Schichten ab und ordnen Sie jedem Ergebnis den Messort zu.

Unterscheiden Sie gespeicherte Antwort und aktuelles Ergebnis

Die Erweiterung stale-if-error erlaubt einem Cache unter den entsprechenden Bedingungen, bei einem Fehler eine Antwort nach Ablauf ihrer Frische zu verwenden. Das konkrete Verhalten hängt von Unterstützung und Konfiguration ab. Dieser Schutz kann Besuchern den Zugriff auf Inhalte erhalten. Fragen Sie bei der Diagnose jedoch: Kann der Origin jetzt die Antwort für die ausgefallene Funktion erzeugen? Die erfolgreiche Anzeige eines gespeicherten Artikels prüft das nicht.

Ein zufälliger URL-Parameter ist kein universeller Bypass. Cloudflare kann beispielsweise den Query-String aus dem Cache-Schlüssel ausschließen. Prüfen Sie deshalb die tatsächlichen Regeln. In Cache-Control einer Antwort verlangt no-cache ohne Argumente eine Validierung vor der Wiederverwendung; no-store untersagt die Speicherung. Verwechseln Sie diese Bedeutungen nicht. Weder der Name einer Diagnose-URL noch ein hinzugefügter Zeitstempel bestätigt allein den Kontakt zur Anwendung.

Behalten Sie beim direkten Test Hostname und TLS-Prüfung bei

Wenn Sie die richtige Origin-Adresse kennen und Zugriff haben, lautet ein HTTPS-Beispiel curl --noproxy '*' --resolve example.com:443:192.0.2.10 https://example.com/. Ersetzen Sie Domain und beispielhafte IP durch eigene Werte. --resolve ändert die Adresse für diesen Hostnamen und Port; der URL-Name bleibt für SNI und Zertifikatsprüfung erhalten. --noproxy '*' schaltet den für curl konfigurierten Proxy aus.

Dieser Test unterscheidet einen konkreten direkten Weg vom öffentlichen Weg durch das CDN; er prüft nicht die gesamte Infrastruktur. Kontrollieren Sie vor dem Vergleich Protokoll und Authentifizierung des Origins. Messen Sie bei einem geschützten Origin von einem zugelassenen internen Ort und behalten Sie die Zugriffsregeln bei. Bewerten Sie Zertifikatsfehler anhand der erwarteten TLS-Konfiguration. Lassen Sie die Zertifikatsprüfung eingeschaltet, damit sich die Aussage des HTTPS-Tests nicht ändert.

Lassen Sie das Monitoring beide Wege prüfen

Bereiten Sie für regelmäßige Origin-Prüfungen einen lesenden Pfad mit verifiziertem Cache-Bypass in jeder relevanten Schicht vor. Unterscheiden Sie bei NGINX proxy_cache_bypass für das Umgehen einer gespeicherten Antwort von proxy_no_cache für das Verhindern ihrer Speicherung. Bestätigen Sie die beabsichtigte Konfiguration auch durch einen Anfrageeintrag am Origin. Eine erfolgreiche Prüfung ohne diese Kontrolle erklärt noch nicht, was der Monitor misst.

Behalten Sie die öffentliche Prüfung durch das CDN bei, denn sie folgt dem Besucherweg. Verfolgen Sie das Origin-Ergebnis getrennt und vergleichen Sie Zeitpunkt, Fehler und erwarteten Inhalt. Wiederholen Sie nach der Reparatur den ausgefallenen dynamischen Vorgang und prüfen Sie, ob eine neue Antwort den üblichen Weg erreicht. So erkennen Sie, ob die Anwendung wieder funktioniert und der Client auch durch den Cache das richtige Ergebnis erhält.

  • Sichern Sie URL, Zeitpunkt, Status und Cache-Header.
  • Prüfen Sie Cache-Schlüssel, Frische und Bypass-Regeln.
  • Testen Sie den Origin auf dem richtigen Weg mit beibehaltenem Hostnamen.
  • Vergleichen Sie Origin, öffentlichen Weg und ursprünglichen Vorgang.

Was Sie mitnehmen

Ein funktionierender Cache ist bei einer Störung nützlich, erklärt aber nicht den aktuellen Zustand des Origins. Legen Sie für jeden Monitor fest, welchen Weg er prüft. Verbinden Sie anschließend die Ergebnisse beider Wege mit dem Vorgang, den der Benutzer tatsächlich abschließen muss.

Dokumentation und weiterführende Links

Mgr. Martin Hlavaj, MBA

Softwareentwickler

Alle Artikel

Erfahren Sie frühzeitig von Ausfällen.

Fügen Sie Ihre Website oder API zu UpBot hinzu und bestimmen Sie, wer den Alarm erhält.

Kostenlos überwachen