Cache Probleme
Ahnungslos
- php
Hallo!
Ich wollte mit Php ein Website machen, auf welcher bei jedem Aufruf ein neues Bild angezeigt wird. Da es aber im Cache gespeichert ist, bekomme ich immer das gleiche angezeigt, wenn ich die Seite nicht manuel aktuaisiere. Ich habe schon verschiedene Beiträge hier bei SelfHtml gelesen, und auch CodeBeispiele ausprobiert, aber irgendwie klappt es immer noch nicht. So sieht mein Quelltext aus:
<?php
header ("Cache-Control: no-cache, must-revalidate");
header ("Pragma: no-cache");
?>
Kann mir jemand sagen, wie ich die Cache am besten Löschen kann?
Hi,
hast du es schon mit den entsprechenden Meta-Angaben versucht.
<meta http-equiv="expires" content="0">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="pragma" content="no-cache">
mfg
Knusperklumpen
Ja, das habe ich..bringt leider auch nichts. Aber trotzdem danke!
echo $begrüßung;
hast du es schon mit den entsprechenden Meta-Angaben versucht.
<meta http-equiv="expires" content="0">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="pragma" content="no-cache">
Das ist HTML-Code und der gilt nur für die HTML-Ressource. Das Bild ist eine eigene Ressource, die keine HTML-Meta-Angaben beinhalten kann. Da müssen dann die entsprechenden HTTP-Header gesetzt werden.
echo "$verabschiedung $name";
Hi,
ja das ist schon klar, aber das Bild wird ja letztendlich in einer HTML-Seite angezeigt und durch den Browser dann auch gecached, insofern das Cachen meta-seitig nicht unterbunden wird ... oder verstehe ich da was falsch?
mfg
Knusperklumpen
echo $begrüßung;
ja das ist schon klar, aber das Bild wird ja letztendlich in einer HTML-Seite angezeigt
Nein, das ist keine zwingende Notwendigkeit.
Mal ein Gedankenspiel: Was soll denn der Browser deiner Meinung nach machen, wenn das Bild auf mehreren Seiten mit unterschiedlichen Cache-Einstellungen eingebunden wird? Und warum sollten Bilder, die sich nie ändern (z.B. für den Hintergrund), aber von Seiten mit sich ständig änderndem Inhalt referenziert werden ebenfalls von den Bitte-nicht-cachen-Einstellungen des HTML-Dokuments betroffen sein?
und durch den Browser dann auch gecached, insofern das Cachen meta-seitig nicht unterbunden wird ... oder verstehe ich da was falsch?
Jede Ressource wird für sich selbst betrachtet. Wie und ob sie referenziert wird, ist unerheblich.
echo "$verabschiedung $name";
Hello,
Ich wollte mit Php ein Website machen, auf welcher bei jedem Aufruf ein neues Bild angezeigt wird.
Kann mir jemand sagen, wie ich die Cache am besten Löschen kann?
Benutze nicht nur anderen Inhalt für das Bild, sondern auch einen neuen Namen.
Die andere Möglichkeit wäre, tatsächlich mit der Mitwirkung des Browsers zu rechnen und
header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s', $datei_zeit ) . ' GMT' );
mitzusenden.
Da das letzte Bild dann einen älteren Eintrag haben muss, sollte der Browser, sofern der User zumindest "Auto" einggestellt hat, das Bild neu laden. Damit fängt er sich dann wieder einen neuen "Last-Modified" ein und überschreibt den anderen.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Hello,
Die andere Möglichkeit wäre, tatsächlich mit der Mitwirkung des Browsers zu rechnen und
header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s', $datei_zeit ) . ' GMT' );
mitzusenden.
für $datei_zeit kannst Du natürlich auch die aktuelle Zeit nehmen
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom