Seitenupdate wird nicht angezeigt...
Peter
- browser
Hallo Leute!
Ich habe wiedermal ein kleines Problem, mit dem ich auf Eure Hilfe hoffe.
Vor einiger Zeit habe ich eine Webseite erstellt, die aller einer Woche aktualisiert wird. Ich erhalte jedoch immer wieder eMails von Besuchern, daß sich noch immer keine Aktualisierungen online befinden. Ich vermute, daß sich die Präsenz noch im Cache also den Temporary Internetfiles bei den Besuchern befindet und mit einem Klick auf Aktualisieren dann mit den neuen Inhalten aufbaut.
Um den Besuchern jedoch gleich die neuen Inhalte immer anzeigen zu können, suche ich eine Möglichkeit, daß programmiertechnisch umzusetzen.
Hat jemand dafür eine Idee? Kann man das "Langzeit"-Cachen z.B. teilweise unterbinden?
Bin für jeden Hinweis dankbar...
Ciao
Peter
Ja mit php geht sowas :)
function preventCaching()
//
// browsercaching unterbinden (über http-header, daher vor html-content aufrufen!)
//
{
header('Expires: Mon, 01 Jan 1997 08:00:00 GMT');
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
header("Cache-Control: post-check=0, pre-check=0", false);
header('Pragma: no-cache');
}
Gruß Christoph!
Danke Christoph, leider nur unterstützt der Server auf dem die Präsenz läuft kein PHP. :(
Ciao
Peter
Hallo Peter,
Danke Christoph, leider nur unterstützt der Server auf dem die Präsenz läuft kein PHP. :(
Dann verwende halt die entsprechenden <meta>-Tags: http://selfhtml.teamone.de/html/kopfdaten/meta.htm#diverse
Grüße aus Nürnberg
Tobias
Moin!
Hallo Peter,
Danke Christoph, leider nur unterstützt der Server auf dem die Präsenz läuft kein PHP. :(
Dann verwende halt die entsprechenden <meta>-Tags: http://selfhtml.teamone.de/html/kopfdaten/meta.htm#diverse
Es gibt ganz sicher auch die Möglichkeit, per .htaccess dem Apache-Server die richtigen (oder bessere) Informationen zu liefern.
Eine kurze Suche in der Doku ergab folgende Ansätze:
http://httpd.apache.org/docs/mod/mod_headers.html
Mit mod_headers kann man beliebige Header (also auch die, die Christian mit PHP setzen wollte) in bzw. vor die HTML-Seite setzen und damit das Caching ausschalten oder zu seinen Gunsten beeinflussen.
http://httpd.apache.org/docs/mod/mod_expires.html
Mit mod_expires kann man den Seiten ein Verfallsdatum mitgeben, damit sie nur begrenzt im Cache oder in Proxys aufbewahrt werden. Diese Vorgehensweise empfiehlt sich eher als das totale Ausschalten des Cachings, weil auf diese Weise kurzfristiges Caching erlaubt ist. Als Haltbarkeitsdatum ist zum Beispiel "now plus 12 hours" oder ähnliches empfehlenswert - das Caching der Seite wird für 12 Stunden erlaubt. Damit ist ein wöchentliches Update garantiert innerhalb von 12 Stunden sichtbar. Wahlweise kann man das Haltbarkeitsdatum auch an feste Termine binden, beispielsweise an das Datum der letzten Modifikation der Datei: "modification plus 6 days" erlaubt das Caching der fraglichen Datei für 6 Tage. Bei wöchentlichen Updates wird also die Datei maximal 6 Tage im Cache gehalten. Damit wird die Datei neu angefragt, wenn das nächste Update noch einen Tag entfernt ist.
- Sven Rautenberg
Moin!
Mit mod_headers kann man beliebige Header (also auch die, die Christian mit PHP setzen wollte) in bzw. vor die HTML-Seite setzen und damit das Caching ausschalten oder zu seinen Gunsten beeinflussen.
s/Christian/Christoph/ :)
- Sven Rautenberg