Résoudre les problèmes

PrestaShop 1.6 : le répertoire cache consomme de l'espace de façon incontrôlée

Vérifié le 3 min de lecture cache espace PrestaShop

Ce guide concerne PrestaShop 1.6. Dans PrestaShop 1.7, 8 et 9, le cache se trouve dans var/cache : suivez le guide var/cache occupe beaucoup d'espace.

Le dossier cache contient des fichiers que PrestaShop génère à partir des modèles, des requêtes SQL et d'autres données, pour que la boutique soit plus rapide. PrestaShop devrait les supprimer quand ils ne servent plus, mais dans certaines boutiques le dossier grossit sans contrôle jusqu'à occuper plusieurs gigaoctets et remplir l'hébergement.

Tout ce qu'il contient peut être supprimé sans rien perdre : PrestaShop régénère ce dont il a besoin à la visite suivante. Le premier chargement après l'avoir vidé sera un peu plus lent.

Voir quel dossier occupe le plus

Dans cPanel, ouvrez Utilisation du disque et naviguez jusqu'au dossier cache de la boutique, ou par SSH :

du -sh ~/public_html/cache/cachefs ~/public_html/cache/smarty/compile ~/public_html/cache/smarty/cache

Le vider depuis le panneau de PrestaShop

Allez dans Paramètres avancés > Performances et cliquez sur Vider le cache (en haut à droite). Si l'espace ne diminue pas ensuite ou si le panneau ne se charge pas, videz-le à la main.

Le vider à la main

Par FTP ou depuis le Gestionnaire de fichiers de cPanel, supprimez le contenu de ces dossiers, pas les dossiers :

  • cache/cachefs
  • cache/smarty/compile
  • cache/smarty/cache

Si vous voyez un fichier index.php à l'intérieur, laissez-le : il empêche de lister le dossier depuis le navigateur.

Le vider automatiquement chaque mois

Si le problème se répète, programmez une tâche dans cPanel :

  1. Allez dans Tâches Cron (Cron Jobs).
  2. Dans Add New Cron Job, sous Common Settings, choisissez Once Per Month.
  3. Dans Command, collez ceci :
cd /home/USUARIO_CPANEL/public_html && find cache/cachefs cache/smarty/compile cache/smarty/cache -mindepth 1 ! -name index.php -delete 2>/dev/null
  1. Cliquez sur Add New Cron Job.

Remplacez USUARIO_CPANEL par votre utilisateur cPanel. Si la boutique est dans un sous-dossier ou sur un autre domaine, remplacez /home/USUARIO_CPANEL/public_html par son chemin, par exemple /home/USUARIO_CPANEL/public_html/tienda. Vous trouverez plus de détails sur les tâches programmées dans les tâches cron dans cPanel.

Si le dossier se remplit en quelques jours au lieu de quelques mois, passez la fréquence à Once Per Week. Et si c'est cache/cachefs qui grossit, vérifiez dans Paramètres avancés > Performances la partie Cache : avec le système Système de fichiers activé, PrestaShop y enregistre les requêtes. Si vous le désactivez, le dossier cesse de grossir ; vérifiez ensuite que la boutique se charge toujours aussi vite.

PrestaShop 1.6 ne reçoit plus de mises à jour de sécurité. Si vous le pouvez, prévoyez le passage à une version prise en charge.

Cela peut aussi vous aider

Quelque chose cloche ou a changé ? Racontez-nous et nous le vérifions.