Pour des questions de benchmarks j'ai eu besoin d'installer Quickcache et ce n'est pas une mince affaire mais la version étant en release candidate je ne vais pas me plaindre. C'est parti :
Téléchargement de la version 2.1.1rc1
pcr@home:/home/data/www/htdocs/$ wget http://ovh.dl.sourceforge.net/sourceforge/quickcache/QuickCache_v2.1.1rc1.zip
Extraction du contenu de l'archive
pcr@home:/home/data/www/htdocs/$ unzip QuickCache_v2.1.1rc1.zip
Mise en place de quickcache dans mon fichier index.php :
<?php
$cachetimeout = 86400;
require "./quickcache/quickcache.php";
Page::generate();
?>
Configuration de quickcache.php :
$includedir = "/home/data/www/htdocs/quickcache";
Création du répertoire pour le cache fichier :
pcr@home:/home/data/www/htdocs/$ mkdir ./quickcache/tmp
Test d'affichage d'une page :
Notice: Undefined variable: QUICKCACHE_ISCGI in quickcache_main.php on line 272
Bon on va mettre les mains dans le cambouis et corriger ça. Je remplace ligne 272 de quickcache_main.php :
if($QUICKCACHE_ISCGI)
Par un appel sur $GLOBALS, berk ! que c'est laid :
if($GLOBALS["QUICKCACHE_ISCGI"])
Une autre erreur du même genre mais je l'ai bien chercher celle là parce que elle montre le bout de sont nez que lorsque le navigateur ne supporte pas la compression gz :
Notice: Undefined index: HTTP_ACCEPT_ENCODING in quickcache_main.php on line 127
Notice: Undefined index: HTTP_ACCEPT_ENCODING in quickcache_main.php on line 130
Je modifie donc la fonction quickcache_encoding pour qu'elle ressemble à ça :
function quickcache_encoding() {
if (headers_sent() || connection_aborted()) {
return false;
}
if(isset($_SERVER["HTTP_ACCEPT_ENCODING"]) === false)
{
$_SERVER["HTTP_ACCEPT_ENCODING"] = '';
}
if (strpos($_SERVER["HTTP_ACCEPT_ENCODING"],'x-gzip') !== false) {
return "x-gzip";
}
if (strpos($_SERVER["HTTP_ACCEPT_ENCODING"],'gzip') !== false) {
return "gzip";
}
return false;
}
Voilà un Quickcache tout beau tout neuf en attendant mieux :D.
Image : mape s