Solución a errores comunes en PrestaShop: Base de datos, 500 error y más
Si estás leyendo esto, probablemente te has encontrado con algún mensaje de error en tu tienda PrestaShop. No te preocupes, es más común de lo que parece. Como técnico de soporte, he visto cientos de casos de errores PrestaShop y la mayoría tienen una solución clara y sencilla. En esta guía vamos a desglosar los fallos más frecuentes: problemas con la base de datos, el temido error 500, pantallas en blanco, errores de conexión y más.
Vamos a ir paso a paso, como si estuviéramos sentados frente a tu ordenador. El objetivo es que puedas solucionar error 500 PrestaShop y otros fallos sin necesidad de ser un experto en programación.
¿Por qué ocurren los errores en PrestaShop?
PrestaShop es un sistema muy potente, pero también complejo. Los errores suelen aparecer por tres razones principales:
- Actualizaciones incompletas de módulos, temas o del propio PrestaShop.
- Problemas de permisos en archivos o carpetas del servidor.
- Configuración incorrecta de la base de datos o del archivo
settings.inc.php.
Cuando ves un mensaje como "Error de base de datos", "500 Internal Server Error" o "La página no se carga correctamente", el origen casi siempre está en uno de estos puntos. Vamos a ver cada caso.
Error de base de datos en PrestaShop: causas y soluciones
Uno de los errores PrestaShop más alarmantes es cuando aparece un mensaje que dice algo como: "Cannot connect to database" o "Error de conexión a la base de datos". Esto puede deberse a que las credenciales de acceso han cambiado, la base de datos se ha corrompido o el servidor de base de datos está caído.
Paso 1: Verifica las credenciales en el archivo de configuración
El primer lugar donde debes mirar es el archivo app/config/parameters.php (en PrestaShop 1.7 y versiones superiores) o config/settings.inc.php (en PrestaShop 1.6). Allí se guardan los datos de conexión a la base de datos.
Abre el archivo con un editor de texto (como Notepad++ o el editor de archivos de tu hosting) y busca líneas como:
'database_host' => 'localhost',
'database_name' => 'nombre_de_tu_bd',
'database_user' => 'usuario_de_bd',
'database_password' => 'contraseña_de_bd',
Comprueba que estos datos coincidan exactamente con los que te proporcionó tu proveedor de hosting. Un error típico es que la contraseña tenga un carácter especial mal interpretado.
[TIP] Si no recuerdas tus credenciales, puedes consultarlas desde el panel de control de tu hosting. Por ejemplo, si usas Syspanel, ingresa por el puerto 2106 y ve a la sección "Bases de datos". Allí verás el nombre, usuario y contraseña de cada base de datos.
Paso 2: Reparar tablas corruptas
Si las credenciales son correctas pero el error persiste, es posible que alguna tabla de la base de datos esté dañada. Para repararla:
- Accede a phpMyAdmin desde tu panel de hosting (normalmente está en la sección de bases de datos).
- Selecciona la base de datos de tu tienda.
- Marca todas las tablas (puedes usar el checkbox superior).
- En el menú desplegable "Con seleccionados", elige Reparar tabla.
Esto intentará corregir cualquier error de estructura. Si el problema es grave, puede que necesites una copia de seguridad reciente.
[WARNING] Siempre haz una copia de seguridad de la base de datos antes de hacer cualquier reparación. En phpMyAdmin puedes exportar toda la base de datos con un clic.
Paso 3: Aumentar el límite de memoria de la base de datos
A veces el error aparece porque una consulta requiere más memoria de la permitida. Esto es común en tiendas con muchos productos o tráfico elevado. Puedes solucionarlo temporalmente añadiendo esta línea al archivo parameters.php o settings.inc.php:
define('_DB_SERVER_', 'localhost');
define('_DB_NAME_', 'tu_base');
define('_DB_USER_', 'tu_usuario');
define('_DB_PASSWD_', 'tu_contraseña');
define('_MYSQL_ENGINE_', 'InnoDB');
define('_DB_PREFIX_', 'ps_');
Además, pide a tu hosting que aumente el límite de memoria para MySQL. Normalmente lo pueden hacer desde su panel.
Solucionar error 500 en PrestaShop (Internal Server Error)
El error 500 es uno de los más frustrantes porque no da detalles. La página simplemente se queda en blanco o muestra un mensaje genérico. Afortunadamente, hay varias formas de solucionar error 500 PrestaShop sin ser un experto.
Activar el modo debug para ver el error real
Por defecto, PrestaShop oculta los detalles del error por seguridad. Para ver qué está fallando realmente, debes activar el modo debug.
- Accede a tu servidor por FTP o al administrador de archivos de tu hosting.
- Busca el archivo
config/defines.inc.php. - Ábrelo con un editor de texto y busca esta línea:
define('_PS_MODE_DEV_', false); - Cámbiala a:
define('_PS_MODE_DEV_', true); - Guarda el archivo y recarga tu tienda. Ahora verás un mensaje de error detallado (PHP Fatal error, etc.).
[INFO] Una vez solucionado el problema, vuelve a poner
falsepara que los clientes no vean mensajes técnicos.
Causas comunes del error 500
- Módulo incompatible: Después de una actualización, algún módulo puede estar dando conflicto. La solución rápida es renombrar la carpeta del módulo desde FTP (por ejemplo, de
modules/mimoduloamodules/mimodulo_old). Si el error desaparece, ese módulo es el culpable. - Tema defectuoso: Si cambiaste de tema recientemente, prueba a cambiarlo temporalmente al tema predeterminado (por ejemplo, "classic" en PrestaShop 1.7). Puedes hacerlo desde la base de datos o renombrando la carpeta del tema actual.
- Límite de memoria de PHP: Si tu tienda tiene muchos módulos o productos, puede que PHP se quede sin memoria. Añade esta línea al archivo
config/defines.inc.php:ini_set('memory_limit', '256M');
Verificar permisos de archivos y carpetas
Los permisos incorrectos también provocan error 500. Los archivos deben tener permisos 644 y las carpetas 755. Puedes corregirlos desde el panel de tu hosting o con un cliente FTP:
- Conecta por FTP.
- Selecciona toda la carpeta raíz de tu tienda.
- Haz clic derecho y elige "Permisos de archivo".
- Marca "Recursivo" y aplica 755 a directorios y 644 a archivos.
[TIP] En Syspanel (puerto 2106) puedes usar el gestor de archivos integrado para cambiar permisos de forma masiva.
Pantalla en blanco (White Screen of Death)
Este error es similar al 500, pero sin código. La página se queda completamente blanca. Las causas son las mismas, pero a veces es más fácil diagnosticarlo.
Solución rápida para pantalla en blanco
- Desactiva todos los módulos no esenciales: Renombra la carpeta
modulesamodules_oldy crea una nueva carpetamodulesvacía. Luego, ve añadiendo módulos uno a uno hasta encontrar el conflictivo. - Aumenta el límite de memoria: Como en el error 500, añade
ini_set('memory_limit', '256M');endefines.inc.php. - Verifica el archivo .htaccess: A veces se corrompe. Renómbralo a
.htaccess_oldy genera uno nuevo desde el back office (Parámetros de la tienda > Tráfico y SEO > Generar .htaccess).
Error de conexión a la base de datos después de migrar
Si cambiaste de hosting o de servidor, es muy común que aparezca un error de base de datos. Esto se debe a que las credenciales han cambiado.
Actualizar las credenciales en PrestaShop
- Localiza el archivo
app/config/parameters.php(oconfig/settings.inc.php). - Edita las líneas de
database_host,database_name,database_userydatabase_passwordcon los nuevos datos. - Guarda el archivo.
[WARNING] Si tu nuevo hosting usa una IP diferente para el servidor de base de datos, asegúrate de que el
database_hostsea correcto (a veces eslocalhost, otras veces una IP como127.0.0.1o un nombre de servidor).
Cambiar la URL de la tienda
Después de migrar, también debes actualizar la URL en la base de datos. Conéctate a phpMyAdmin y ejecuta esta consulta SQL:
UPDATE ps_configuration SET value = 'https://tunuevadominio.com' WHERE name = 'PS_SHOP_DOMAIN';
UPDATE ps_configuration SET value = 'https://tunuevadominio.com' WHERE name = 'PS_SHOP_DOMAIN_SSL';
Reemplaza tunuevadominio.com por tu dominio real. El prefijo ps_ puede variar si lo cambiaste al instalar.
Error 403 o 404 en PrestaShop
Los errores 403 (prohibido) y 404 (no encontrado) también son frecuentes, pero suelen ser más fáciles de resolver.
Error 403: Permisos o .htaccess
- Causa: El archivo
.htaccesspuede tener reglas demasiado restrictivas o los permisos de carpetas están mal. - Solución: Renombra
.htaccessa.htaccess_oldy genera uno nuevo desde el back office. Si el error persiste, revisa los permisos de la carpetauploadyimg(deben ser 755).
Error 404: URLs amigables mal configuradas
- Causa: Al activar las URLs amigables, a veces el servidor no tiene el módulo
mod_rewritehabilitado. - Solución: En el back office, ve a Parámetros de la tienda > Tráfico y SEO. Desactiva las URLs amigables, guarda, y vuelve a activarlas. Si el error continúa, contacta a tu hosting para que activen
mod_rewrite.
Preguntas frecuentes (FAQ)
¿Qué hago si no puedo acceder al back office?
Si el error te impide entrar al panel de administración, puedes desactivar módulos desde la base de datos. Conéctate a phpMyAdmin, busca la tabla ps_module y cambia el campo active a 0 para los módulos sospechosos. Otra opción es renombrar la carpeta del módulo desde FTP.
¿Cómo puedo saber si el error es de la base de datos o del servidor?
Prueba a acceder a una página estática de tu tienda (como index.php). Si ves un error de base de datos, el problema está en la conexión. Si ves un error 500 o pantalla en blanco, es más probable que sea un conflicto de módulos o tema.
¿Es seguro editar archivos como defines.inc.php?
Sí, siempre que hagas una copia de seguridad antes. Si te equivocas, puedes subir el archivo original de nuevo. Eso sí, no modifiques nada que no entiendas del todo.
¿Debo actualizar PrestaShop a la última versión?
Sí, pero siempre con precaución. Las actualizaciones corrigen errores de seguridad y rendimiento. Sin embargo, antes de actualizar, haz una copia completa de archivos y base de datos. Si usas Syspanel, puedes hacer backups fácilmente desde el puerto 2106.
Consejos finales para evitar errores PrestaShop
- Mantén copias de seguridad frecuentes: Al menos una vez a la semana. Así, si algo sale mal, puedes restaurar en minutos.
- Actualiza módulos y temas solo desde fuentes oficiales: Los módulos piratas o desactualizados son la principal causa de errores PrestaShop.
- Usa un hosting especializado en PrestaShop: Algunos proveedores ofrecen configuraciones optimizadas que evitan muchos problemas de base de datos y rendimiento.
- Prueba los cambios en un entorno de pruebas: Si tienes un subdominio o un instalación local, haz allí las actualizaciones antes de aplicarlas en producción.
Recuerda que la paciencia es clave. La mayoría de los errores tienen solución y, con esta guía, ya tienes las herramientas para solucionar error 500 PrestaShop y otros fallos comunes. Si después de seguir todos los pasos el problema persiste, no dudes en contactar al soporte técnico de tu hosting. Ellos pueden revisar los logs del servidor para encontrar la causa exacta.
Espero que este artículo te haya sido de gran ayuda. ¡Tu tienda online volverá a funcionar en poco tiempo!
