Solucionar errores comunes de PrestaShop en DirectAdmin
¡Hola! Soy el técnico de soporte amigable, y hoy vamos a ponernos manos a la obra para resolver los problemas más habituales de PrestaShop cuando se aloja en DirectAdmin. Si estás viendo pantallas en blanco, errores de conexión a la base de datos, o que la tienda va lenta, este artículo es para ti. Vamos a solucionarlos paso a paso, sin tecnicismos complicados.
¿Por qué surgen errores en PrestaShop con DirectAdmin?
PrestaShop es una plataforma potente, pero necesita un entorno bien configurado. DirectAdmin es un panel de control excelente, pero a veces la configuración por defecto no es la ideal para PrestaShop. Los errores más comunes suelen venir de:
- Versiones de PHP incorrectas o módulos de PHP faltantes.
- Permisos de archivos y carpetas mal configurados.
- Límites de memoria o tiempo de ejecución muy bajos.
- Problemas con el archivo
.htaccesso la reescritura de URLs. - Errores de conexión a la base de datos MySQL/MariaDB.
No te preocupes, todos tienen solución. Vamos a verlos uno por uno.
## Error #1: Pantalla en blanco (White Screen of Death - WSOD)
Este es el error más temido. Abres tu tienda y solo ves una página en blanco. No hay mensaje de error, solo silencio. Esto suele deberse a un error de PHP que no se muestra por la configuración de display_errors.
### ¿Cómo solucionarlo?
-
Activar la visualización de errores (temporalmente): Accede a tu panel de DirectAdmin. Busca la sección de "Administrador de PHP" o "Versión de PHP" (suele estar dentro de la configuración del dominio). Ahí, busca la opción
display_errorsy ponla enOn. También puedes editar el archivoconfig/defines.inc.phpde PrestaShop (en la raíz de tu tienda) y cambiar_PS_MODE_DEV_atrue. Esto te mostrará el error real.[WARNING] No dejes esto activado en producción. Una vez solucionado, vuelve a ponerlo en
Offofalsepor seguridad. -
Aumentar la memoria de PHP: El error puede ser por falta de memoria. En DirectAdmin, dentro de la sección de "Configuración de PHP" (o "PHP Selector"), busca el parámetro
memory_limit. Súbelo a256Mo512M. También ajustamax_execution_timea120ymax_input_varsa5000. -
Verificar los permisos de archivos: Los archivos de PrestaShop deben tener permisos específicos. Conéctate por FTP o al administrador de archivos de DirectAdmin. Ve a la raíz de tu tienda y asegúrate de que:
- Las carpetas tengan permisos
755. - Los archivos tengan permisos
644. - La carpeta
cache,config,logyuploadtengan permisos777(o al menos755si tu hosting es más restrictivo, pero 777 es lo recomendado por PrestaShop).
[TIP] Puedes hacerlo fácilmente desde el Administrador de Archivos de DirectAdmin: selecciona todos los archivos y carpetas, y usa la opción "Cambiar permisos".
- Las carpetas tengan permisos
## Error #2: Error de conexión a la base de datos
Ves el mensaje: "No se puede conectar a la base de datos" o "Error de conexión a la base de datos". Esto es frustrante, pero suele ser fácil de arreglar.
### Posibles causas y soluciones:
-
Credenciales incorrectas en el archivo
config/settings.inc.php: Este archivo guarda los datos de conexión. Accede a él por FTP o administrador de archivos. Busca las líneas:define('_DB_SERVER_', 'localhost'); define('_DB_NAME_', 'tu_base_de_datos'); define('_DB_USER_', 'tu_usuario'); define('_DB_PASSWD_', 'tu_contraseña');Asegúrate de que coincidan exactamente con los datos de tu base de datos en DirectAdmin. Si cambiaste la contraseña, actualízala aquí.
-
Base de datos dañada o corrupta: Puede pasar. Desde el panel de phpMyAdmin (al que accedes desde DirectAdmin), selecciona tu base de datos y elige la opción "Reparar tabla" para todas las tablas. O usa el comando SQL:
REPAIR TABLE nombre_de_tabla;. -
Límite de conexiones excedido: En hosting compartido, a veces hay un límite de conexiones simultáneas. Si tu tienda tiene mucho tráfico, puede saturarse. Habla con tu proveedor de hosting para que lo aumente temporalmente.
-
Servidor MySQL caído: Rara vez, pero puede ocurrir. Desde DirectAdmin, ve a "Servicios" y verifica que MySQL esté en verde (funcionando). Si no, reinícialo.
## Error #3: Errores 403, 404 o 500
Estos errores HTTP son muy comunes y suelen estar relacionados con la configuración del servidor o de PrestaShop.
### Error 403 (Prohibido)
- Causa común: Permisos de archivos incorrectos. Revisa el punto anterior sobre permisos (carpetas 755, archivos 644).
- Solución: Asegúrate de que el archivo
index.phpen la raíz tenga permisos 644. Si tienes una carpetaprivateoadminprotegida por contraseña, verifica que el archivo.htaccessesté bien configurado.
### Error 404 (No encontrado)
- Causa común: Las URLs amigables no están configuradas o el archivo
.htaccessestá dañado. - Solución:
- Ve a tu panel de administración de PrestaShop (si puedes acceder) a "Configuración de la tienda" > "Tráfico y SEO" y desactiva las URLs amigables. Guarda los cambios.
- Luego, vuelve a activarlas. Esto regenerará el archivo
.htaccess. - Si no puedes acceder al panel, crea un archivo
.htaccessmanualmente en la raíz de tu tienda con el contenido básico que PrestaShop genera (puedes copiarlo de una instalación limpia o de la documentación oficial). O, mejor aún, desde DirectAdmin, ve a "Administrador de archivos", busca la raíz, y si ves un archivo.htaccess, renómbralo a.htaccess.oldy luego desde el panel de PrestaShop (si accedes) regenéralo.
### Error 500 (Error interno del servidor)
-
Causa común: Problemas con el archivo
.htaccess(una directiva incorrecta), un módulo de PHP que falla, o un error de sintaxis en un archivo de PrestaShop. -
Solución:
- Renombrar
.htaccess: Temporalmente, renombra el archivo.htaccessa.htaccess.bak. Si el error desaparece, el problema está en ese archivo. Puedes regenerarlo desde el panel de administración (como en el error 404). - Verificar la versión de PHP: En DirectAdmin, en la sección de "Versión de PHP", asegúrate de usar una versión compatible con tu PrestaShop (por ejemplo, PHP 7.4 u 8.0 para PrestaShop 1.7, o PHP 8.1 para PrestaShop 8). Los módulos obsoletos pueden dar error 500.
- Revisar los logs de error: DirectAdmin guarda los logs de error del servidor. Ve a "Registros de errores" (o "Error Logs") y busca la línea que cause el error 500. Te dará una pista precisa (por ejemplo, un archivo de un módulo que falla).
[INFO] Los logs son tu mejor amigo para errores 500. Si no sabes leerlos, busca en Google el texto del error, o pásaselo a tu soporte técnico.
- Renombrar
## Error #4: Problemas con el carrito o el checkout
A veces el carrito se vacía solo, no se añaden productos, o el proceso de pago falla.
### Causas y soluciones:
- Cookies mal configuradas: Asegúrate de que en "Configuración de la tienda" > "Rendimiento" tengas activada la opción "Almacenamiento de cookies" (o similar). También verifica que el dominio de tu tienda esté bien configurado en "Tráfico y SEO".
- Problemas con SSL/HTTPS: Si tu tienda usa HTTPS (obligatorio hoy en día), asegúrate de que en "Parámetros avanzados" > "Rendimiento" esté marcada la opción "Forzar SSL en todas las páginas". Además, en DirectAdmin, ve a "Administrador de SSL" y verifica que el certificado esté correctamente instalado y que no haya errores de contenido mixto (archivos cargados en HTTP dentro de una página HTTPS).
- Módulos de pago o envío obsoletos: Los módulos desactualizados pueden causar conflictos. Actualízalos desde el panel de administración o desactívalos temporalmente para ver si el problema persiste.
- Límites de sesión en PHP: En la configuración de PHP de DirectAdmin, busca
session.gc_maxlifetimey ponlo a1440(o más, como7200). Tambiénsession.cookie_lifetimea0(para que la sesión dure hasta cerrar el navegador).
## Error #5: La tienda va muy lenta
La lentitud puede deberse a muchos factores, pero los más comunes en DirectAdmin son:
### Diagnóstico y soluciones:
- Activar la caché de PrestaShop: Ve a "Configuración de la tienda" > "Rendimiento" y activa la "Caché" (recomendada: Caché de archivos). También puedes activar la "Compilación de plantillas" (forzar compilación solo si estás desarrollando, desactivarla en producción).
- Optimizar la base de datos: Desde phpMyAdmin, selecciona tu base de datos y usa la opción "Optimizar tabla" para todas las tablas. También puedes instalar un módulo como "PrestaShop Cleaner" para limpiar tablas temporales.
- Comprobar el uso de recursos: En DirectAdmin, ve a "Estadísticas" > "Uso de recursos". Si ves que el servidor está al límite, puede que necesites un plan de hosting más grande o mejorar el rendimiento de tu tienda (imágenes optimizadas, menos módulos, etc.).
- Aumentar la memoria de PHP (como vimos antes) y el
max_execution_timepara procesos pesados. - Desactivar módulos innecesarios: Muchos módulos en segundo plano consumen recursos. Desactiva los que no uses.
## Error #6: Problemas al actualizar PrestaShop
Actualizar es importante, pero puede dar errores si no se hace bien.
### Consejos para una actualización segura:
- Haz una copia de seguridad: Antes de nada, desde DirectAdmin, haz un backup completo de tu cuenta (archivos y base de datos). Es tu salvavidas.
- Usa el módulo "1-Click Upgrade": Es la forma más segura. Descárgalo desde el panel de administración de PrestaShop. Sigue los pasos, pero asegúrate de que tu hosting cumple los requisitos de la nueva versión (PHP, memoria, etc.).
- Si falla la actualización: Puede que salga un error de "No se puede conectar a la base de datos" o "Error de escritura en archivos". Revisa los permisos de las carpetas (especialmente
cache,configyinstall) y que el archivoconfig/settings.inc.phptenga permisos 644. Si el error persiste, restaura tu backup desde DirectAdmin. - Problemas con módulos: Después de actualizar, algunos módulos pueden no ser compatibles. Desactívalos todos y actívalos uno por uno para identificar el culpable.
## Preguntas Frecuentes (FAQ)
### ¿Cómo accedo a phpMyAdmin desde DirectAdmin?
Ve a tu panel de DirectAdmin, busca la sección "MySQL" o "Base de datos", y dentro de la base de datos de tu tienda, verás un enlace a phpMyAdmin. Haz clic y accede con las credenciales de la base de datos.
### ¿Qué versión de PHP debo usar para PrestaShop?
Depende de la versión de PrestaShop. Para PrestaShop 1.6, usa PHP 5.6 o 7.0 (aunque 7.0 puede dar problemas, mejor 5.6). Para PrestaShop 1.7, usa PHP 7.4 o 8.0. Para PrestaShop 8, usa PHP 8.1 o superior. Siempre verifica los requisitos oficiales.
### ¿Cómo reinicio los servicios en DirectAdmin?
En el panel principal, busca "Servicios". Verás una lista con Apache, MySQL, etc. Puedes reiniciarlos desde ahí. Si no ves la opción, contacta a tu proveedor de hosting.
### ¿Qué hago si mi tienda se vuelve loca después de instalar un módulo?
Desactiva el módulo inmediatamente desde el panel de administración. Si no puedes acceder, renombra la carpeta del módulo en /modules/nombre-del-modulo a /modules/nombre-del-modulo.bak para desactivarlo forzosamente.
### ¿Puedo usar Syspanel (HestiaCP) en lugar de DirectAdmin?
Sí, pero este artículo se centra en DirectAdmin. Si usas Syspanel (HestiaCP), recuerda que el puerto de acceso es el 2106 (ejemplo: https://tu-dominio:2106). Los conceptos de solución de errores son similares, pero la interfaz y la ubicación de las opciones cambian. Para errores en Syspanel, busca guías específicas para ese panel.
## Conclusión
Los errores en PrestaShop con DirectAdmin pueden parecer complicados, pero con un poco de paciencia y siguiendo estos pasos, la mayoría se solucionan. Recuerda: siempre haz copias de seguridad antes de hacer cambios grandes. Y si un error persiste, no dudes en contactar a tu proveedor de hosting o a un técnico especializado. ¡Tu tienda online volverá a funcionar en poco tiempo!
Espero que esta guía te haya sido de ayuda. Si tienes más dudas, aquí estoy para ayudarte. ¡Buena suerte con tu tienda!
