Hola @elena89 y @beatriz96,
Gracias por la consulta, Elena. Es un problema muy común, y @beatriz96 tiene razón en que la versión es crucial, aunque puedo darte una guía general para PrestaShop 8.0.4, que asumo que es la tuya dada la fecha de tu consulta. Tu PHP debería estar entre 7.2 y 8.1.
Primero, la inestabilidad con Redis. Si instalaste ext-redis y aun así es inestable, verifica varias cosas:
- Versión de Redis Server: Asegúrate de que el servidor Redis esté corriendo y sea accesible desde tu PHP. A veces el problema no es PHP, sino la configuración del demonio Redis en el servidor.
- Configuración PHP: Comprueba que la extensión
ext-redis esté correctamente cargada. Puedes hacerlo creando un phpinfo() temporal.
- Prioridad de Configuración: PrestaShop 8 prioriza la configuración del Back Office. Si defines algo en
parameters.php que choca con el BO, puede generar conflictos. El parameters.php es más para detalles de conexión específicos que el BO no ofrece directamente (como un índice de base de datos Redis si tuvieras varios).
Tu snippet en parameters.php tiene un pequeño fallo al dejar el puerto en null. Esto puede causar que PrestaShop no sepa cómo conectarse correctamente. Si vas a definirlo manualmente, hazlo de forma completa. Aquí te muestro la estructura correcta si necesitaras forzar la configuración de Redis en app/config/parameters.php (pero siempre después de intentar la configuración vía BO):
// app/config/parameters.php
return [
// ...
'ps_cache_adapter' => 'cache.adapter.redis',
'ps_cache_redis_host' => '127.0.0.1',
'ps_cache_redis_port' => 6379, // Siempre especifica el puerto
'ps_cache_redis_dbindex' => 0, // Índice de la base de datos de Redis (opcional, por defecto 0)
'ps_cache_lifetime' => 3600,
// ...
];
Pasos en el Back Office (Parámetros avanzados > Rendimiento):
- Sistema de caché: Selecciona 'Sistema de caché por Redis' (o Memcached si te funcionara). Asegúrate de que los detalles de conexión que aparecen (Host, Puerto) sean los correctos para tu servidor Redis.
- Compilación de plantillas Smarty: Déjalo en 'Recompilar las plantillas si han sido actualizadas'. Esto es un buen equilibrio para desarrollo y producción.
- Caché: Actívala.
- CCC (Combinar, Comprimir y Caché):
- Para el JS: El problema con los scripts de terceros es muy común. La minificación de JavaScript (JS) por parte de PrestaShop a veces cambia el orden de carga o el ámbito de las variables, rompiendo la funcionalidad. Mi recomendación es desactivar la opción 'Optimización de JavaScript' si tienes problemas con los módulos. Puedes dejar CSS y HTML activos si no te dan problemas. Si necesitas minificación, tendrás que buscar un método externo o un módulo específico que gestione la concatenación de JS de forma más inteligente.
Después de cada cambio, borra la caché del BO (el botón 'Borrar caché' arriba a la derecha). Espero que esto te ayude a estabilizar tu tienda.