Récemment étudié l'utilisation du mécanisme de mise en cache HTTP Last-Modified, qui permet au navigateur de lire le fichier cache,
$num = 4; //Simuler les modifications des données du serveur pour déterminer si le navigateur doit lire le fichier cache
if($ num ==4) {
if( isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) ){
$browserCachedCopyTimestamp = strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']);
if ( ( $browserCachedCopyTimestamp + 3600 ) > time() ) {
header("HTTP/1.1 304");
exit(1);
}
}
}autre{
header('Last-Modified: '.gmdate('D, d M Y H:i:s',time())." GMT");
header('Expires: '.gmdate('D, d M Y H:i:s', time() + 3600)." GMT");
header("Cache-Control:max-age=3600");
for( $i=1; $i < 10 ; $i++ ){
echo "$i|";
}
}
J'ai testé ci-dessus que les fichiers mis en cache peuvent être lus, mais je viens de vérifier en ligne et j'ai dit que c'était le cas
[Les en-têtes http de requête Last-Modified et ETags sont utilisés ensemble. Le serveur génère d'abord la balise Last-Modified/Etag. Le serveur peut ensuite l'utiliser pour déterminer si la page a été modifiée et décider si le fichier doit continuer à être mis en cache. ]
Pourquoi Last -Modified est utilisé avec ETags. Je ne comprends pas.
Citer la description du lien de réponse de quelqu'un d'autre