Heim  >  Fragen und Antworten  >  Hauptteil

php - HTTP-Last-Modified-Cache zum Lesen zwischengespeicherter Dateien verwenden?

Kürzlich untersuchte die Verwendung des Last-Modified-Caching-Mechanismus von HTTP, der es dem Browser ermöglicht, die Cache-Datei zu lesen,
$num = 4; //Änderungen der Serverdaten simulieren, um zu bestimmen, ob der Browser die Cache-Datei lesen muss
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);  
     }  
  }  

}sonst{

    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|";      
    }  

}
Ich habe oben getestet, dass zwischengespeicherte Dateien gelesen werden können, aber ich habe gerade online nachgesehen und festgestellt, dass dies der Fall ist

[Last-Modified- und ETags-Anforderungs-HTTP-Header werden zunächst zusammen verwendet. Der Server kann damit später feststellen, ob die Seite geändert wurde, und entscheiden, ob die Datei weiterhin zwischengespeichert werden soll ]
Warum Last -Modified zusammen mit ETags verwendet wird. Verstehe es nicht.

天蓬老师天蓬老师2734 Tage vor630

Antworte allen(1)Ich werde antworten

  • 大家讲道理

    大家讲道理2017-05-16 13:16:43

    引用别人的一篇回答链接描述

    Antwort
    0
  • StornierenAntwort