Ir al contenido principal

Tu PrestaShop se rompe al vaciar la caché desde el administrador: archivos de caché con permisos erróneos

Escrito por Javier Galeote

Síntoma

Al pulsar «Vaciar la caché» desde el panel de administración de PrestaShop, la tienda deja de funcionar: aparecen errores, la web carga sin estilos o directamente no arranca. La única forma de recuperarla es entrar por el Administrador de archivos o FTP y renombrar la carpeta var/cache manualmente, lo que obliga a PrestaShop a generar una caché nueva.

Además, al intentar borrar los archivos de caché desde el Administrador de archivos de cPanel puede aparecer el error «Directory not empty» o negarse a eliminarlos: no es un problema de la papelera ni de los inodos, sino de permisos.

Causa real

Cuando se vacía la caché desde el administrador, PrestaShop elimina numerosos archivos temporales y los vuelve a generar. Mientras tanto, la tienda sigue recibiendo visitas y procesos automáticos.

Si varias peticiones coinciden mientras la caché se está eliminando, dos procesos pueden intentar borrar y crear los mismos archivos casi al mismo tiempo. Como consecuencia, alguno de los archivos esenciales (por ejemplo appParameters.php) puede quedar creado con permisos 000, es decir, sin permiso de lectura para ningún usuario. Al no poder leerlo, PrestaShop deja de arrancar correctamente.

Solución

  • Recuperación inmediata: renombrar la carpeta var/cache (por ejemplo a var/cache_old). PrestaShop creará una caché completamente nueva y la tienda volverá a funcionar.

  • Permisos bloqueados: si no puedes borrar los archivos de caché antiguos por falta de permisos, contacta con soporte para que corrijamos los permisos desde el servidor.

  • Solución de fondo: este problema es mucho más frecuente en versiones antiguas y obsoletas de PrestaShop. La recomendación es actualizar la tienda a una versión soportada.

Cuidado al clonar la tienda a un entorno de pruebas

Si clonas la tienda en producción a un subdominio de desarrollo, arrastrarás también los archivos de caché y sus permisos erróneos, y el clon presentará el mismo problema. Tras clonar, elimina o renombra la carpeta var/cache del entorno de pruebas para partir de una caché limpia.

Cómo evitarlo

  • Evita vaciar la caché desde el administrador en horas de mucho tráfico.

  • Mantén PrestaShop actualizado.

  • Si el problema se repite, abre un ticket de soporte: podemos analizar los permisos y elaborar un diagnóstico del servidor.

¿Ha quedado contestada tu pregunta?