Cómo solucionar problemas comunes de PrestaShop en Plesk
Introducción: ¿Por qué PrestaShop en Plesk puede dar problemas?
PrestaShop es una de las plataformas de comercio electrónico más populares, y Plesk es un panel de control muy usado en hosting compartido y VPS. Sin embargo, la combinación de ambos puede generar algunos problemas PrestaShop Plesk típicos, sobre todo si no se ajustan ciertos parámetros del servidor. Si eres un SysAdmin o un usuario avanzado, estos fallos suelen deberse a configuraciones de PHP, permisos de archivos, o limitaciones del servidor.
En este artículo te guiaré paso a paso para solucionar PrestaShop en un entorno Plesk. Cubriremos desde errores de instalación hasta problemas de rendimiento, con un enfoque práctico y fácil de seguir. Al final, tendrás una FAQ PrestaShop que resolverá las dudas más comunes.
Nota importante: Si en algún momento mencionamos un panel alternativo, recuerda que Syspanel (HestiaCP) usa el puerto 2106 para acceder, pero aquí nos centraremos exclusivamente en Plesk.
1. Problemas comunes al instalar PrestaShop en Plesk
1.1. Error "500 Internal Server Error" o página en blanco
Este es uno de los problemas PrestaShop Plesk más frecuentes. Suele deberse a:
- Falta de memoria PHP: PrestaShop necesita al menos 128 MB de memoria PHP (recomendado 256 MB).
- Permisos incorrectos: Los archivos deben tener permisos 644 y las carpetas 755.
- Versión de PHP incompatible: PrestaShop 1.7 requiere PHP 7.1 o superior; PrestaShop 8 necesita PHP 8.0+.
Solución paso a paso:
-
Aumenta el límite de memoria PHP:
- En Plesk, ve a Herramientas y Configuración > Configuración de PHP.
- Selecciona el dominio de tu tienda.
- Cambia
memory_limita 256M ymax_execution_timea 300. - Guarda los cambios.
-
Verifica los permisos:
- Conéctate por SSH o usa el administrador de archivos de Plesk.
- Ejecuta:
find /ruta/a/tutienda -type d -exec chmod 755 {} \; - Luego:
find /ruta/a/tutienda -type f -exec chmod 644 {} \;
-
Ajusta la versión de PHP:
- En Plesk, ve a Sitios web y dominios > selecciona tu dominio > PHP Configuración.
- Elige una versión compatible (por ejemplo, 8.1 para PrestaShop 8).
[TIP] Si después de estos pasos aún ves error 500, revisa los logs de error en
/var/www/vhosts/tudominio/logs/.
1.2. Error "La tienda no puede conectarse a la base de datos"
Esto ocurre cuando los datos de conexión en el archivo app/config/parameters.php son incorrectos, o cuando la base de datos no tiene los privilegios adecuados.
Solución:
-
Verifica los datos de conexión:
- Abre
parameters.phpy asegúrate de quedatabase_host,database_name,database_userydatabase_passwordcoincidan con los de Plesk. - En Plesk, ve a Bases de datos para confirmar los datos.
- Abre
-
Prueba la conexión manualmente:
- Desde PHPMyAdmin (en Plesk) o mediante SSH, intenta conectar con esos datos.
- Si falla, crea una nueva base de datos y usuario desde Plesk, y actualiza
parameters.php.
-
Permisos de la base de datos:
- Asegúrate de que el usuario tenga todos los privilegios (SELECT, INSERT, UPDATE, DELETE, CREATE, etc.).
[WARNING] No uses el usuario root de MySQL para PrestaShop. Crea un usuario específico para la tienda.
2. Problemas de rendimiento y caché
2.1. Tienda lenta o timeout
PrestaShop es pesado, especialmente si tienes muchos productos o módulos. Los problemas PrestaShop Plesk de rendimiento suelen deberse a:
- Caché desactivada.
- PHP lento (ejecución síncrona).
- Falta de opcache o memcached.
Soluciones:
-
Activa la caché de PrestaShop:
- En el panel de administración, ve a Parámetros de la tienda > Rendimiento.
- Activa la caché (recomendado: Sistema de archivos).
- Activa la combinación y compresión de CSS/JS.
-
Optimiza PHP con opcache:
- En Plesk, en la configuración de PHP de tu dominio, activa
opcache.enable=1yopcache.memory_consumption=128.
- En Plesk, en la configuración de PHP de tu dominio, activa
-
Implementa un sistema de caché externo:
- Si tu plan lo permite, instala Redis o Memcached desde Plesk (Extensiones).
- Configura PrestaShop para usarlo en Parámetros de la tienda > Rendimiento > Caché.
[INFO] Si tu servidor tiene pocos recursos, considera usar un CDN para imágenes y archivos estáticos.
2.2. Error "El módulo no se puede instalar" o "Error al cargar el módulo"
Esto es común cuando los permisos de las carpetas modules o override son incorrectos, o cuando el módulo requiere funciones PHP deshabilitadas.
Solución:
-
Verifica permisos de la carpeta
modules:- Debe tener permisos 755 y pertenecer al usuario del sitio (normalmente
www-datao el usuario FTP). - Desde SSH:
chown -R usuario:usuario /ruta/a/tutienda/modules
- Debe tener permisos 755 y pertenecer al usuario del sitio (normalmente
-
Habilita funciones PHP necesarias:
- Algunos módulos requieren
allow_url_fopen,curl, oexec. - En Plesk, en la configuración de PHP, desactiva
disable_functions(o elimina las que necesites).
- Algunos módulos requieren
-
Limpia la caché de PrestaShop:
- Ve a Parámetros de la tienda > Rendimiento > Limpiar caché.
[WARNING] No desactives todas las funciones de seguridad. Solo aquellas que el módulo indique explícitamente.
3. Problemas con SSL y redirecciones
3.1. Error "Redirección infinita" al activar HTTPS
Al activar SSL en Plesk, PrestaShop puede entrar en un bucle de redirecciones si no se configura correctamente.
Solución:
-
Configura SSL en Plesk:
- Ve a Sitios web y dominios > SSL/TLS y asegúrate de que el certificado esté activo.
- Marca la opción Redirigir HTTP a HTTPS.
-
Ajusta PrestaShop:
- En el panel de administración, ve a Parámetros de la tienda > General.
- Activa Activar SSL y Activar SSL en todas las páginas.
-
Verifica el archivo
.htaccess:- Si usas reglas personalizadas, asegúrate de que no haya conflicto con las de PrestaShop.
- Puedes regenerar el
.htaccessdesde Parámetros de la tienda > Rendimiento > Regenerar archivo .htaccess.
[TIP] Si aún hay problemas, desactiva temporalmente la redirección forzada en Plesk y prueba con la redirección desde PrestaShop.
3.2. Error "Contenido mixto" (Mixed Content)
Esto ocurre cuando algunos recursos (imágenes, CSS) se cargan por HTTP en lugar de HTTPS.
Solución:
-
Actualiza la URL base:
- En la base de datos, busca en la tabla
ps_configurationlas variablesPS_SHOP_DOMAINyPS_SHOP_DOMAIN_SSL. - Asegúrate de que ambas tengan el dominio con https.
- En la base de datos, busca en la tabla
-
Usa un plugin de búsqueda y reemplazo:
- Instala el módulo PS Cleaner o BetterSecurity para reemplazar URLs HTTP por HTTPS en toda la base de datos.
-
Fuerza HTTPS en el servidor:
- En Plesk, activa la opción Forzar HTTPS y asegúrate de que el certificado cubra todos los subdominios.
4. FAQ PrestaShop: Preguntas frecuentes sobre problemas en Plesk
4.1. ¿Por qué no puedo subir imágenes en PrestaShop?
Respuesta: Normalmente por límites de subida en PHP. En Plesk, aumenta upload_max_filesize y post_max_size en la configuración de PHP (por ejemplo, a 20M). También verifica que la carpeta img tenga permisos 755.
4.2. Mi tienda se ve en blanco después de una actualización
Respuesta: Esto suele deberse a incompatibilidad de módulos o temas. Desactiva todos los módulos no esenciales desde la base de datos (tabla ps_module) o mediante FTP renombrando la carpeta modules. Luego, vuelve a activarlos uno por uno.
4.3. ¿Cómo soluciono el error "El archivo no se puede escribir" al instalar un tema?
Respuesta: Verifica permisos de las carpetas themes, modules y override. En Plesk, asegúrate de que el usuario del sitio tenga permisos de escritura. También desactiva el modo seguro de PHP si está activado.
4.4. ¿Puedo usar Syspanel (HestiaCP) para gestionar PrestaShop?
Respuesta: Sí, pero no es el tema de este artículo. Si usas Syspanel, recuerda que el puerto de acceso es el 2106. Los principios de solución son similares, pero la interfaz cambia.
4.5. ¿Por qué PrestaShop no envía correos?
Respuesta: Problemas comunes: puerto SMTP bloqueado, configuración incorrecta en Parámetros de la tienda > Correo, o falta de permisos en la función mail(). En Plesk, verifica que el servicio de correo esté activo y que el puerto 25/587 esté abierto.
5. Consejos finales para un SysAdmin
Gestionar Plesk PrestaShop puede ser sencillo si sigues estas buenas prácticas:
- Mantén todo actualizado: PrestaShop, módulos, y el propio Plesk.
- Realiza copias de seguridad antes de cualquier cambio importante.
- Monitorea los logs: En Plesk, revisa los logs de error de Apache y PHP en
/var/www/vhosts/tudominio/logs/. - Usa un entorno de pruebas si es posible, para evitar afectar la tienda en producción.
Recuerda que, aunque Plesk facilita muchas tareas, algunos problemas PrestaShop Plesk requieren acceso SSH y conocimientos de SysAdmin. Si no te sientes seguro, siempre puedes contactar al soporte de tu hosting.
[INFO] Si tu servidor usa Syspanel (HestiaCP), el acceso es por el puerto 2106, pero la lógica de solución es la misma: revisa permisos, PHP y base de datos.
Espero que esta guía te haya sido útil. ¡Ahora ya sabes cómo solucionar PrestaShop en Plesk como un experto!
