Websides aktualisieren erzwingen

Xanti

Xanti

Mouse Organist
Hallo,

ich hab ein Fotoalbum auf meiner Homepage. Da es nur maximal einmal im Monat aktualisiert wird, habe ich die "expires" entsprechend gesetzt, dass ein Browser diese Seiten eine Zeit lang im Cache behält. Wenn ich aber Fotos interaktiv hochlade, soll der Browser die aktuellen Seiten aus dem Netz holen und nicht aus dem Cache.

Zur Zeit hab ich es so gelöst, dass die "expires" auf "now" (also kein Cache benutzen) gesetzt wird, sobald ein entsprechendes Cookie gesetzt ist, welches man bekommt, wenn man sich zum Bilder hochladen anmeldet. Leider kann man auf die Art nicht die Seiten aktualisieren, die vor dem Anmelden im Cache gelandet sind (...die ja noch die alte "expires" haben).

Wie kann man also den Browser zwingen, eine Seite aus dem Netz zu aktualisieren?
Ich hoffe, ich habe mich einigermassen verständlich ausgedrückt.

Danke, Xanti

edit: Eine Lösung wäre, Seiten mit einem Placebo-Parameter aufzurufen (z.B. nocache=1), sobald das cockie gesetzt ist. Ist es aber nicht zu ineffizient, bei jedem Link auf der Seite erstmal auf Cookies zu testen?
 
Zuletzt bearbeitet:
Sollte doch eigentlich reichen, wenn du der Seite ein Cache-Control mit no-cache als Wert mitgibst:
Code:
<meta http-equiv="cache-control" content="no-cache">
 
theton schrieb:
Sollte doch eigentlich reichen, wenn du der Seite ein Cache-Control mit no-cache als Wert mitgibst:
Code:
<meta http-equiv="cache-control" content="no-cache">

Das Problem ist, dass das Kind dann schon im Brunnen ist. Das heisst, bevor ich ihm sage, dass er die Page nicht cachen soll, hat er sie schon gecacht. Oder?

Gruss, Xanti
 
nein :). Der Webbrowser wird dieses Meta-Tag erkennen und entsprechend handeln.
 
Dazu müsste er aber die Header laden, was er aber nicht macht, weil die Seite bereits im Cache ist.

Gruss, Xanti

edit: Ich habe obigen Vorschlag getestet, es funktioniert leider nicht.
 
Dann evtl. einfach mal mit Javascript nen location.reload() aufrufen, so dass die Seite sich selbst neu laedt, womit ja dann auch der Cache nicht mehr genutzt werden sollte.
 
Vielleicht mal den Cache deaktivieren oder sowas in die Richtung.

<meta http-equiv="cache-control" content="no-cache">
 
Zuletzt bearbeitet:
Naja, scheint wohl doch nicht so einfach zu lösen zu sein. Trotzdem Danke an alle. :)

Gruss Xanti
 
Zurück
Oben