Errores comunes de PrestaShop en DirectAdmin y cómo arreglarlos
Introducción: ¿Por qué ocurren estos errores?
Si tienes una tienda online con PrestaShop alojada en un servidor con panel DirectAdmin, es posible que en algún momento te hayas encontrado con pantallazos en blanco, errores de conexión a la base de datos, o que la tienda simplemente no cargue. No te preocupes, esto es más común de lo que parece y, en la mayoría de los casos, tiene solución.
Los errores Prestashop DirectAdmin suelen deberse a problemas de configuración del servidor, permisos de archivos incorrectos, versiones de PHP incompatibles o ajustes en el propio DirectAdmin. En esta guía, te explicamos paso a paso cómo identificar y solucionar problemas Prestashop en este entorno.
## 1. Error: Pantalla en blanco o "Error 500 Internal Server"
Este es uno de los errores más frustrantes. Tu tienda Prestashop no funciona DirectAdmin y solo ves una página en blanco o un mensaje de error interno del servidor.
### Causas más comunes
- PHP con errores fatales (por ejemplo, por un plugin incompatible).
- Permisos de archivos incorrectos.
- Archivo .htaccess corrupto.
- Límite de memoria PHP excedido.
### ¿Cómo arreglarlo?
-
Activar el modo debug de PrestaShop
Edita el archivoconfig/defines.inc.phpy cambia:define('_PS_MODE_DEV_', false);a:
define('_PS_MODE_DEV_', true);Así verás el error exacto en pantalla.
-
Revisar los logs del servidor
En DirectAdmin, ve a "Log Viewer" o "Error Log" para ver los errores de PHP y Apache. Busca líneas con "PHP Fatal error". -
Aumentar la memoria PHP
En DirectAdmin, ve a "PHP Settings" y subememory_limita al menos256M. También puedes crear un archivophp.inipersonalizado en la raíz de tu tienda. -
Restaurar el .htaccess original
Renombra tu.htaccessactual a.htaccess_oldy genera uno nuevo desde el panel de administración de PrestaShop (Parámetros de la tienda > Tráfico y SEO > URL amigables, desactívalo y actívalo de nuevo).
[TIP] Siempre haz una copia de seguridad del archivo antes de modificarlo.
## 2. Error: "No se puede conectar a la base de datos"
Este error suele aparecer al intentar acceder a la tienda o al panel de administración.
### Causas comunes
- Credenciales incorrectas en el archivo
app/config/parameters.php. - Base de datos caída o sobrecargada.
- Permisos de usuario de BD incorrectos en DirectAdmin.
### ¿Cómo solucionarlo?
-
Verifica las credenciales
Abreapp/config/parameters.phpy comprueba quedatabase_host,database_name,database_userydatabase_passwordcoinciden con los datos de tu base de datos en DirectAdmin. -
Comprueba el estado del servidor MySQL
En DirectAdmin, ve a "MySQL Management" y asegúrate de que el servicio está activo. Si no, reinícialo desde "Services". -
Reasigna permisos
En "MySQL Management", selecciona tu base de datos y asegúrate de que el usuario tiene todos los privilegios (SELECT, INSERT, UPDATE, DELETE, etc.). -
Prueba la conexión manualmente
Crea un archivotestdb.phpen la raíz con este contenido:<?php $conn = new mysqli('localhost', 'usuario', 'contraseña', 'basededatos'); if ($conn->connect_error) { die("Conexión fallida: " . $conn->connect_error); } echo "Conectado correctamente"; ?>Si falla, el problema es del servidor.
[WARNING] No subas este archivo a producción; bórralo después de la prueba.
## 3. Error: "PrestaShop no carga los CSS y JS" (estilos rotos)
Tu tienda se ve como texto plano, sin estilos ni imágenes. Esto es típico cuando los recursos estáticos no se cargan.
### Causas
- URL de la tienda mal configurada en la base de datos.
- Modo amigable de URL desactivado o mal configurado.
- Permisos incorrectos en las carpetas
themes,modulesoupload.
### Solución paso a paso
-
Revisa la URL base
En el panel de administración, ve a "Parámetros de la tienda" > "General" y asegúrate de que la URL de la tienda (con o sin www) coincide con la real. -
Regenera el .htaccess
Como en el error 1, desactiva y reactiva las URL amigables. -
Ajusta permisos de carpetas
Conéctate por FTP o al administrador de archivos de DirectAdmin y asegúrate de que las carpetasthemes,modules,uploadyimgtengan permisos 755, y los archivos 644. -
Limpia la caché de PrestaShop
En el panel de administración, ve a "Parámetros avanzados" > "Rendimiento" y haz clic en "Limpiar caché".
[INFO] Si usas CDN, desactívalo temporalmente para descartar conflictos.
## 4. Error: "El módulo no se puede instalar" o "Error al subir el tema"
Los módulos y temas de PrestaShop a veces fallan al instalarse en DirectAdmin.
### Causas
- Límite de subida de archivos demasiado bajo.
- Permisos de escritura en la carpeta
modulesothemes. - Versión de PHP incompatible con el módulo.
### Solución
-
Aumenta el límite de subida
En DirectAdmin, ve a "PHP Settings" y subeupload_max_filesizeypost_max_sizea al menos64M. -
Verifica permisos
Asegúrate de que las carpetasmodulesythemestengan permisos 755 (o 777 temporalmente para la instalación, luego vuelve a 755). -
Actualiza PHP a una versión compatible
PrestaShop 1.7 requiere PHP 7.1 a 8.1. En DirectAdmin, ve a "PHP Version Selector" y elige una versión adecuada. -
Instala el módulo manualmente
Si la subida falla, sube el archivo ZIP por FTP a la carpetamodulesy descomprímelo allí. Luego actívalo desde el panel.
[TIP] Siempre descarga módulos de fuentes oficiales o de confianza para evitar malware.
## 5. Error: "La página de producto no se encuentra" (404)
Los productos o categorías dan error 404 aunque existen.
### Causas
- URL amigables mal configuradas.
- El archivo .htaccess no se ha regenerado después de cambios.
- Problemas con el motor de reescritura de Apache (mod_rewrite).
### Solución
-
Verifica que mod_rewrite esté activo
En DirectAdmin, ve a "Apache Configuration" y asegúrate de quemod_rewriteestá marcado. Si no, actívalo y reinicia Apache. -
Regenera el .htaccess
Como en pasos anteriores, desde el panel de administración desactiva y reactiva las URL amigables. -
Borra la caché de URL
En "Parámetros avanzados" > "Rendimiento", limpia la caché de Smarty. -
Reindexa los productos
Ve a "Catálogo" > "Productos" y haz clic en "Reindexar" (si tu versión lo permite).
[WARNING] Si después de esto sigue fallando, revisa si has movido la tienda de carpeta o dominio recientemente.
## 6. Error: "El carrito no guarda los productos" o "No se puede añadir al carrito"
Los productos se añaden pero al recargar desaparecen.
### Causas
- Problemas con las cookies del dominio.
- Configuración incorrecta de la sesión PHP.
- El modo SSL no está bien configurado.
### Solución
-
Verifica la configuración de cookies
En "Parámetros de la tienda" > "General", asegúrate de que el "Dominio de la cookie" esté vacío o con un punto delante (.tudominio.com). -
Activa el modo SSL correctamente
En la misma sección, activa "Activar SSL" y "Activar SSL en todas las páginas". Si no tienes certificado SSL, instala uno desde DirectAdmin (o usa Let's Encrypt). -
Ajusta la configuración de sesión PHP
Enphp.ini, asegúrate de quesession.save_pathtiene permisos de escritura y quesession.gc_maxlifetimees al menos 1440. -
Limpia las cookies del navegador
A veces el problema es local. Prueba en otro navegador o en modo incógnito.
[INFO] Si usas un CDN como Cloudflare, asegúrate de que no está bloqueando las cookies de sesión.
## 7. Error: "El panel de administración no carga" o "Login no funciona"
No puedes acceder al back office de PrestaShop.
### Causas
- Problemas de permisos en la carpeta
admin. - Archivos de caché corruptos.
- IP bloqueada por el firewall.
### Solución
-
Renombra la carpeta admin
Si has cambiado la carpetaadminpor seguridad, asegúrate de que la URL nueva está bien escrita. Puedes renombrarla temporalmente aadmin123y probar. -
Borra la caché manualmente
Conéctate por FTP y elimina todo el contenido de la carpetavar/cache(ocacheen versiones antiguas). Luego recarga. -
Verifica el archivo de configuración
Revisaapp/config/parameters.phppara asegurarte de que la ruta del directorioadminestá correcta. -
Comprueba el firewall de DirectAdmin
Ve a "Firewall" y asegúrate de que tu IP no está bloqueada. Si usas ConfigServer Security & Firewall (CSF), añade tu IP a la lista blanca.
[WARNING] Si cambias la carpeta admin, actualiza la ruta en el archivo de configuración para evitar errores.
## 8. Error: "La tienda está en modo mantenimiento" sin razón aparente
Aunque no hayas activado el modo mantenimiento, los visitantes ven la página de "en construcción".
### Causas
- Archivo
maintenance.phpcorrupto o mal configurado. - La IP del visitante está en la lista de mantenimiento.
- Problemas con la caché de PrestaShop.
### Solución
-
Desactiva el modo mantenimiento desde la base de datos
Conéctate a phpMyAdmin en DirectAdmin, busca la tablaps_configurationy localizaPS_SHOP_ENABLE. Cámbialo a1. -
Limpia la caché del navegador y de PrestaShop
Como en pasos anteriores, limpia la caché de Smarty y la del navegador. -
Revisa el archivo maintenance.php
Si existe en la raíz, renómbralo amaintenance_old.php. -
Verifica que no tengas un plugin de mantenimiento activo
Desactiva temporalmente todos los módulos desde la base de datos (tablaps_module) o mediante FTP renombrando la carpetamodules.
[TIP] Si el problema persiste, puede ser un conflicto con un tema o módulo recién instalado.
## 9. Error: "La instalación de PrestaShop falla en DirectAdmin"
Al instalar PrestaShop desde cero, te encuentras con errores.
### Causas
- Requisitos de PHP no cumplidos.
- Permisos de escritura insuficientes en las carpetas de instalación.
- El instalador no puede crear la base de datos.
### Solución
-
Verifica los requisitos de PrestaShop
Durante la instalación, PrestaShop te muestra una lista de requisitos. Si alguno falla (comoallow_url_fopenofileinfo), actívalos en "PHP Settings" de DirectAdmin. -
Crea la base de datos manualmente
En DirectAdmin, ve a "MySQL Management" y crea una base de datos con su usuario y contraseña. Luego, durante la instalación, usa esos datos. -
Da permisos 755 a las carpetas
Asegúrate de que las carpetasconfig,cache,log,img,mails,modules,themes,translations,uploadydownloadtengan permisos 755. -
Usa la versión correcta de PHP
PrestaShop 1.7 funciona mejor con PHP 7.4 u 8.0. En DirectAdmin, selecciona esa versión antes de instalar.
[WARNING] No uses PHP 8.2 o superior con PrestaShop 1.7, puede dar errores de compatibilidad.
## Preguntas frecuentes (FAQ)
### ¿Puedo usar Syspanel (HestiaCP) para gestionar mi PrestaShop?
Sí, si tu hosting usa Syspanel (antes conocido como HestiaCP), el acceso es por el puerto 2106. Los pasos para solucionar errores son similares, pero la interfaz cambia. En Syspanel, busca "PHP Settings" y "File Manager" para hacer los ajustes.
### ¿Cómo sé si mi versión de PHP es compatible?
PrestaShop 1.7 requiere PHP 7.1 a 8.1. PrestaShop 8.0 necesita PHP 7.4 o 8.1. Revisa la documentación oficial de tu versión.
### ¿Por qué mi tienda se ve lenta en DirectAdmin?
Puede deberse a un límite de memoria bajo, plugins pesados o falta de caché. Activa la caché de PrestaShop (APC o Memcached si están disponibles) y optimiza las imágenes.
### ¿Qué hago si no tengo acceso al panel de administración?
Puedes editar los archivos de configuración directamente por FTP o desde el administrador de archivos de DirectAdmin. También puedes resetear la contraseña de administrador desde la base de datos (tabla ps_employee).
### ¿Es seguro usar permisos 777?
No, solo temporalmente para instalaciones. Después de instalar un módulo o tema, vuelve a poner permisos 755 en carpetas y 644 en archivos.
## Conclusión
Los errores Prestashop DirectAdmin pueden parecer abrumadores, pero con esta guía tienes las herramientas para resolver los más comunes. Recuerda siempre:
- Hacer copias de seguridad antes de hacer cambios.
- Usar versiones de PHP compatibles.
- Mantener los permisos de archivos correctos.
- Limpiar la caché después de cada modificación.
Si tu Prestashop no funciona DirectAdmin después de seguir estos pasos, contacta con tu proveedor de hosting: puede ser un problema de configuración del servidor que solo ellos pueden ajustar.
¡Esperamos que tu tienda vuelva a funcionar en minutos!
