Cache-Control-Header-Generator

Baue direkt in deinem Browser aus einfachen Schaltern und menschlichen Zeiteinheiten einen korrekten HTTP-Cache-Control-Response-Header.

Dein Cache-Control-Header wird lokal in deinem Browser aus den gewählten Optionen zusammengesetzt, und nichts, was du konfigurierst, wird hochgeladen oder auf einem Server gespeichert.

Richtest du einen Server ein? Probiere den nginx Config Generator.

Über Cache-Control-Generator

Dieser Cache-Control-Header-Generator verwandelt die verwirrende Menge an HTTP-Caching-Direktiven in ein paar einfache Schalter. Setze public oder private, no-store, no-cache, must-revalidate, proxy-revalidate oder immutable, und lege Lebensdauern wie max-age, s-maxage, stale-while-revalidate und stale-if-error in menschlichen Einheiten wie Stunden, Tagen oder Jahren fest, statt Sekunden zu zählen. Während du die Optionen änderst, setzt das Tool die Direktiven in kanonischer Reihenfolge zusammen, erklärt in klarem Deutsch, was der aktuelle Header genau bewirkt, und markiert widersprüchliche Kombinationen wie no-store mit max-age. Presets decken die Alltagsfälle ab: ein statisches immutable-Asset mit einem Jahr, immer-revalidierendes HTML, nie-speichernde private Daten und eine geteilte CDN-gegen-Browser-Policy. Kopiere den Roh-Header oder fertige Snippets für nginx, Apache und HTML-meta. Alles läuft auf deinem Gerät, im Browser.

Funktionen

So verwendest du Cache-Control-Generator

  1. Wähle ein Preset oder beginne von Grund auf und wähle public oder private.
  2. Schalte die benötigten Direktiven um, etwa no-cache, must-revalidate oder immutable.
  3. Gib Lebensdauern wie max-age über eine Zahl und eine Einheit (Stunden, Tage, Jahre) ein.
  4. Lies den erzeugten Header-Wert und die Erklärung auf Deutsch darunter.
  5. Kopiere den Roh-Header oder das nginx-, Apache- oder HTML-meta-Snippet, das du brauchst.

Beispiel

Eingabe

public + immutable + max-age = 1 year

Ausgabe

Cache-Control: public, max-age=31536000, immutable

Die klassische Policy für fingerprintete statische Assets: ein Jahr cachen und nie revalidieren.

Häufige Fehler & Fehlerbehebung

Häufig gestellte Fragen

Was ist der Unterschied zwischen no-cache und no-store?
no-store bedeutet, dass die Antwort niemals in irgendeinen Cache geschrieben werden darf, sodass jede Anfrage zum Origin zurückgeht. no-cache erlaubt zwar das Speichern der Antwort, aber der Cache muss sie mit dem Origin revalidieren, bevor er sie erneut ausliefert. no-store geht darum, keine Kopie zu behalten; no-cache darum, eine behaltene Kopie stets zu prüfen.
Was bewirkt immutable in einem Cache-Control-Header?
immutable sagt dem Browser, dass sich die Ressource über die Lebensdauer ihres max-age nie ändert, sodass er die Revalidierung überspringen kann, selbst wenn der Nutzer neu lädt. Es ist für versionierte oder fingerprintete Dateien wie app.9f2c.js gedacht, bei denen ein neuer Build unter einer neuen URL ausgeliefert wird, statt die alte zu überschreiben.
Wie unterscheiden sich max-age und s-maxage?
max-age legt fest, wie lange die Antwort in jedem Cache frisch bleibt, einschließlich des Browsers. s-maxage überschreibt max-age, aber nur für Shared Caches wie CDNs und Proxys. Beide zu setzen erlaubt dir, eine Antwort kurz in Browsern zu cachen und länger auf deinem CDN zu halten.
Wann sollte ich public gegenüber private verwenden?
public erlaubt Shared Caches wie CDNs und Proxys, die Antwort zusammen mit dem Browser zu speichern. private beschränkt die Speicherung auf den Browser des einzelnen Nutzers, was die richtige Wahl für personalisierte oder authentifizierte Antworten ist, die nicht aus einem Shared Cache an einen anderen Nutzer ausgeliefert werden dürfen.
Was bewirkt stale-while-revalidate?
stale-while-revalidate erlaubt einem Cache, eine leicht veraltete Antwort sofort auszuliefern, während er im Hintergrund eine frische Kopie holt. Nutzer erhalten eine sofortige Antwort und der Cache aktualisiert sich für die nächste Anfrage selbst, was den Moment glättet, in dem eine Ressource abläuft.
Wird meine Konfiguration an einen Server gesendet?
Nein. Der Header, die Erklärung und die Snippets werden alle in deinem Browser zusammengesetzt, während du Optionen umschaltest, sodass die Konfiguration lokal auf deinem Gerät verarbeitet wird und nichts hochgeladen wird.

Verwandte Tools

Alle ArrayKit-Tools