Hallo Raketendüsentrieb, Ich sehe da einen expires Header, d.h. Du machst das mit mod_cache?
Nö. Ich war zu faul zu überprüfen, ob mein Hoster mod_chache geladen hat. Ich mach das mit meiner uralten Cachetechnik, die bei Verfügbarkeit und Empfangsbereitschaft gleich die gezippten Daten „raushaut“:
if ( isCache( $cachefile ) ) {
if ( ( ! isset ( $_SERVER['HTTP_ACCEPT_ENCODING'] ) ) or false===strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') ) {
header( 'Last-Modified: ' . date( 'r' , filemtime( $cachefile ) ) );
header( 'Expires: '.date('r', date('U') + (CACHE_TIME_LIMIT * 60) ) );
header( 'Cache-Control: max-age='.( CACHE_TIME_LIMIT * 60 ) );
echo gzdecode ( file_get_contents( $cachefile ) );
exit;
} else {
header( 'Vary: Accept-Encoding' );
header( 'Content-Encoding: gzip' );
header( 'Last-Modified: ' . date( 'r' , filemtime( $cachefile ) ) );
header( 'Expires: ' . date( 'r', date( 'U' ) + ( CACHE_TIME_LIMIT * 60 ) ) );
header( 'Cache-Control: max-age=' . ( CACHE_TIME_LIMIT * 60 ) );
readfile( $cachefile );
exit;
}
}
Vorteil: Serverseitiges und browserseitiges Cachelimit stimmen überein...