Re: appliquer_quota_cache ne fait pas son job
arnaud cordier <[email protected]>
| Newsgroups | gmane.comp.web.spip.devel |
|---|---|
| Message-ID | <[email protected]> |
Coucou,
Le 10/11/2017 à 16:06, Matthieu Marcillaud a écrit :
> Le 10/11/2017 à 15:49, arnaud cordier a écrit :
>> Je m’intéresse à la fonction appliquer_quota_cache() de ecrire/inc/invalideur.php car je suis confronté à un cache qui ne fait qu'enfler sans jamais réduire.
>
> Hum. Effectivement la fonction appliquer_quota_cache() n’a plus de raison d’être appelée maintenant (et comme tu as bien vu elle ne fait plus rien). Le cache devrait grossir jusqu’au nombre maximal de fichier atteint.
Okay, du coup SPIP n'essaye plus de limiter le poids du cache, mais uniquement de limiter le nombre de fichiers: 16^4 en l’occurrence.
Mon problème est justement le nombre de fichiers: sur l'hébergement du site dont j'essaye de limiter le cache, l'hébergeur a posé une limite de 150000 fichiers (sic), ce qui est vite atteint avec deux spip sur le même hébergement. Et paf l'hébergeur bloque les sites !
Finalement j'ai appliqué une rustine :
dans public/cacher.php j'ai mis
function generer_nom_fichier_cache($contexte, $page) {
$u = md5(var_export(array($contexte, $page), true));
// limiter le nombre de fichiers cache à 14^4 = 38416
$u = base_convert($u, 16, 14);
return $u . ".cache";
}
Je n'ai pas trouvé mieux ! Mais ça marche…
Merci,
ArnAud.
_______________________________________________
liste: http://listes.rezo.net/mailman/listinfo/spip-dev
doc: http://www.spip.net/
dev: http://trac.rezo.net/trac/spip/
irc://irc.freenode.net/spip