Einzelnen Beitrag anzeigen
  #9  
Alt 10.06.2008, 09:17:10
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
AW: [Howto] Webseiten beschleunigen mit mod_cache

Zitat:
Zitat von smartweb Beitrag anzeigen
Wer nicht die Möglichkeit hat, mit dem Apache Modul zu Cachen, z.B. weil er keinen Zugriff auf die Apache Konfiguration hat, oder der Webhosting Anbieter es nicht unterstüzt, kann das auch direkt mit php erledigen:

Code:
$cache_expire = 300; // 5 mins

$cachefile = md5($_SERVER["REQUEST_URI"]);

if (file_exists("cache/".$cachefile)) {
 $fileage = time() - filemtime("cache/".$cachefile);
}

/* check for last access - if file is older than $cache_expire, recreate file! */
if ( (file_exists("cache/".$cachefile)) && ( $fileage > $cache_expire)) {
 unlink("cache/".$cachefile); 
} else {
 $page = fread(fopen("cache/".$cachefile,"r"),filesize("cache/".$cachefile));
   print $page;
   exit();
}

ob_start();

... [ das eigentliche script... ]...

$page = ob_get_contents();
ob_end_clean();

$cf = fopen("cache/".$cachefile,"w");
fputs($cf,$page);
fclose($cf);
print $page;
stimmt, warum nicht ausgabe-caching eine template-engine erledigen lassen, wenn man es selbst machen kann (obwohl das ja fast nichts mit dem eigenlichen thema zu tun hat, nämlich dass die php-scripte nicht jedesmal neu compiliert werden müssen).
Mit Zitat antworten