• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Trotz Meta Anweisungen Speicherung im Cache

Seppeli

Neues Mitglied
Guten Morgen.
Da ich meine Seite relativ oft aktualisiere hätte ich gerne, dass die Seite in den Browsern nicht im Cache gespeichert wird. Hab auch die nötigen Meta Informationen die man so im Internet findet eingefügt, dennoch muss ich erst von Hand aktualisieren, damit ich die neusten Einträge sehe.
Woran kann das noch liegen? Kann ich das noch irgendwie anders verhindern, bzw. die Browser anweisen, bei jedem Besuch die Seite neu zu laden?
Danke schon mal!!

ich hab diese Meta tags eingefügt:
HTML:
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="no-cache">
<META HTTP-EQUIV="PRAGMA" CONTENT="no-cache">

Danke für eure Hilfe.
 
Danke. Aber eine Frage noch. Beginnt der Countdown dann, wenn man auf die Seite geht von vorne jedes mal? Oder wird der im Cache gespeichert und wenn die Sekunden abgelaufen sind und man die Seite wieder besucht, erkennt der Browser den Ablauf der Zeit und aktualisiert automatisch?
 
Was willst du genau haben? Während die Seite offen ist, dass sich diese automatisch aktualisiert? Oder wenn du F5 drückst, dass alles geladen wird, und du nicht STRG+F5 drücken musst?

Beim ersten kannst du die Meta Angabe verwenden, die dagunn vorgestellt hat. Diese bedeutet dass 300 Sekunden nach öffnen der Seite, diese neu geladen wird. Besser macht mans mit Ajax.

Beim zweiten, müsste es eigentlich so funktionieren. Alternativ kannst du mit z.b. PHP einen entsprechenden Header mitsenden:
PHP header() Function
 
Ich hätte gerne, dass jedes mal, wenn man die Seite im Browser eingibt, sie sich neu vom Server lädt und nicht die alte Version aus dem Cache anzeigt. Sobald die Seite geladen ist, soll sie sich nicht mehr aktualisieren, erst wenn man den Tab/Browserfenster schließt und die Seite erneut in die Adresszeile eingibt. Also Beispiel:
Ich rufe die Seite um 14.40 Uhr auf, lese alles aktuelle und schließe die Seite. Wenn ich die Seite dann um 18.20 Uhr wieder aufrufe, soll nicht die Version von 14.40 geladen werden, sondern die Neueste, die auf dem Server liegt.
 
Wie bereits gesagt, wenn du PHP auf deinem Space hast kannst du zusätzlich den entsprechenden Header setzen, siehe meinen Link zuvor. Ansonsten sollte deine Metaangabe funktionieren.

Wenn du über einen UMTS Stick surfst kann es sein, dass es deswegen gecached wird. War bei mir auch mal so.

Edit
Probier mal folgendes:
HTML:
<meta http-equiv="expires" content="0">
 
Muss ich dafür einfach das einfügen und damit sollte es dann klappen? Und ja, PHP wird unterstützt.

HTML:
<?php
// Date in the past
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache");
header("Pragma: no-cache");
?>
 
Sollte eigentlich. Allerdings vorsicht:
Höchst wahrscheinlich musst du deine Datei von .htm/.html in .php ändern, da nicht alle Dateien von PHP verarbeitet werden. Alternativ kann man auch in der .htaccess datei den PHP Parser anweisen auch .html/.htm Dateien zu bearbeiten. Wie genau müsstest du googlen.
 
Ich hab das jetzt mal reingesetzt was du mir alles empfohlen hast. Habe eben mal kurz was aktualisiert auf der HP und es scheint geklappt zu haben. Vielen Dank für deine Mühe und Hilfe!!
 
Alternativ dazu kann man die Expire-Daten auch über den Webserver setzen lassen. Da es sich um HTTP-Header-Angaben handelt muss man dafür nicht zwingend PHP bemühen. Wenn Du also PHP an keiner anderen Stelle in deinem Projekt verwendest, solltest Du mal schauen, ob es nicht doch über eine Webserver-Konfiguration ginge. Beim Apache-Webserver gibt es dafür das Modul mod_expire, was aber bei kleinen Hostingpaketen nicht immer aktiviert ist.
 
Zurück
Oben