Was ist der richtige Weg, dem Browser mitzuteilen, dass er nicht zwischenspeichern soll?

8

Ich habe eine Webseite, die immer aktuell bleiben muss. Ich möchte nicht, dass der Browser es zwischenspeichert. Zu diesem Zweck ist dieses Meta-Tag in die Seite eingebettet:

%Vor%

Einige Browser scheinen es jedoch zu ignorieren. Chrome ist besonders schlecht, obwohl andere Browser dasselbe tun.

Wenn ich die Seite aus der Lesezeichenleiste auswähle, trifft sie meistens nicht einmal den Server, sondern lädt sie einfach aus dem Cache. Wenn ich dann F5 drücke, geht es zum Server und holt eine neue Kopie.

Vermisse ich etwas Einfaches? Ich dachte, das Meta-Tag expires ist so wie es ist.

Dies geschieht auf einem IIS 5.0 unter Windows 2000.

Fazit: Sieht so aus, als ob Meta-Tags innerhalb des HTML-Codes nichts tun. Das Einstellen der expires-Tags innerhalb des HTTP macht das jedoch gut.

    
AngryHacker 03.09.2009, 00:39
quelle

5 Antworten

8

Senden Sie Ihre Verfalls-Header über Ihren Server. Insbesondere, wenn Sie Apache verwenden, sehen Sie sich dies an:

Ссылка

    
Paul McMillan 03.09.2009, 00:42
quelle
3

Dies sollte Ihnen helfen:

%Vor%

Sie können den Cache für statische Inhalte auch über IIS konfigurieren. Sie können hier lernen, wie Sie dies tun: Ссылка .

    
Tarik 03.09.2009 00:42
quelle
2

Sie möchten einen Expires-Header an ein Datum in der Vergangenheit (wie Ihr Meta-Tag) senden.

Expires ist der meistbeachtete Cache-Header, aber Sie können auch Dinge wie Last-Modified oder Etags verwenden, um eine spezifischere Kontrolle zu erhalten.

Meta-Tags sind ein etwas veraltetes Mittel zum Festlegen von Caching-Protokollen, und die meisten der Meta-Cache-Steuereigenschaften sind ziemlich veraltet (z. B. NO-CACHE). Viele Benutzeragenten ignorieren sie.

    
Gabriel Hurley 03.09.2009 00:56
quelle
2

Es gibt einen großartigen Artikel, den ich über Browser-Caching und Caching im Allgemeinen gelesen habe:

Ссылка

Es erklärt in hohen Details, was funktioniert und was nicht, was am besten ist.

Zusammenfassend gibt es eine Menge Möglichkeiten (HTML-Tags, HTTP-Header) und Arten von Cache (Browser-Proxy, Gateways)

    
MaxiWheat 03.09.2009 01:19
quelle
1

Senden Sie Cache-Control: no-cache an den Client innerhalb der Antwortheader.
Bitte geben Sie an, welche Plattform Sie verwenden, um eine bessere Antwort zu erhalten.

    
Rodrigo 03.09.2009 01:23
quelle

Tags und Links