Cómo solucionar el error 500 en PrestaShop (Syspanel y otros paneles)
¿Qué es el error 500 en PrestaShop y por qué aparece?
El error 500 PrestaShop, también conocido como "Internal Server Error" o "error interno del servidor", es uno de los problemas más comunes y, a la vez, más frustrantes para cualquier tienda online. Si estás leyendo esto, seguramente te has encontrado con una pantalla en blanco o un mensaje genérico que no te dice nada útil. No te preocupes, es más frecuente de lo que imaginas y, en la mayoría de los casos, tiene solución.
Este error significa que el servidor donde está alojada tu tienda ha encontrado un problema inesperado que le impide cargar la página. A diferencia de otros errores más específicos (como el 404 de "página no encontrada"), el 500 es un "cajón de sastre": puede deberse a muchas causas distintas. Desde un archivo con permisos incorrectos hasta un módulo incompatible, pasando por problemas de memoria o errores en el archivo de configuración.
Lo bueno es que, con un método paso a paso, puedes ir descartando causas hasta encontrar la raíz del problema. En esta guía completa, te voy a enseñar cómo solucionar error 500 PrestaShop tanto si usas Syspanel (el panel de control que antes se llamaba HestiaCP y que se accede por el puerto 2106) como si usas cPanel, Plesk o cualquier otro panel de hosting. Vamos a ello.
Primeros pasos: antes de tocar nada
Antes de lanzarte a modificar archivos o reiniciar servicios, es fundamental que hagas una copia de seguridad de tu tienda. Esto incluye tanto los archivos como la base de datos. Si algo sale mal durante el proceso, podrás restaurar todo sin perder ventas ni configuración.
También te recomiendo que anotes qué has hecho justo antes de que apareciera el error. ¿Instalaste un módulo nuevo? ¿Actualizaste PrestaShop? ¿Cambiaste algún archivo del tema? Esta información te ahorrará mucho tiempo.
[WARNING]
No intentes "arreglar" el error a ciegas borrando archivos al azar. Podrías empeorar la situación. Sigue los pasos en orden y con calma.
Paso 1: Activa el modo debug de PrestaShop
PrestaShop, por defecto, oculta los detalles del error. Para ver el mensaje exacto, necesitas activar el modo de depuración (debug). Esto te dirá exactamente qué archivo está fallando y por qué.
Cómo activar el modo debug desde el servidor
Accede a tu panel de control (Syspanel, cPanel, etc.) y busca el administrador de archivos. Localiza el archivo config/defines.inc.php en la raíz de tu instalación de PrestaShop.
Dentro del archivo, busca esta línea:
define('_PS_MODE_DEV_', false);
Cámbiala por:
define('_PS_MODE_DEV_', true);
Guarda el archivo y recarga tu tienda. Ahora verás un mensaje de error mucho más detallado, con la ruta del archivo problemático y el número de línea. Ese mensaje es oro puro para diagnosticar.
[TIP]
Si no puedes editar archivos desde el panel, usa un cliente FTP como FileZilla. Descarga el archivo, edítalo en tu ordenador con un editor de texto (como Notepad++ o Sublime Text) y súbelo de nuevo.
Si el modo debug no muestra nada
A veces, el error es tan grave que ni siquiera el modo debug puede mostrarse. En ese caso, revisa los logs del servidor. En Syspanel, puedes encontrar los logs de error en /var/log/apache2/ o /var/log/nginx/ dependiendo de tu configuración. Busca el archivo error.log y revisa las últimas líneas.
Paso 2: Revisa los permisos de archivos y carpetas
Los permisos incorrectos son una de las causas más frecuentes del error 500 PrestaShop. Si los archivos tienen permisos demasiado restrictivos, el servidor no puede leerlos; si son demasiado permisivos, puede ser un riesgo de seguridad, pero también puede provocar errores.
Permisos correctos para PrestaShop
- Carpetas: 755
- Archivos: 644
- Archivo
config/settings.inc.php(si existe): 444 o 644 (dependiendo de la versión)
Cómo cambiar permisos desde Syspanel
- Accede a Syspanel (recuerda, el puerto es el 2106).
- Ve a "Administrador de archivos".
- Navega hasta la raíz de tu PrestaShop.
- Selecciona todas las carpetas y archivos.
- Haz clic derecho y elige "Permisos" o "Chmod".
- Introduce los valores correctos y aplica.
Si usas cPanel, el proceso es similar: selecciona los archivos, haz clic en "Permisos" y establece los valores.
[INFO]
En Syspanel, también puedes usar el comando chmod desde la terminal si tienes acceso SSH: chmod -R 755 /ruta/a/tu/prestashop y find /ruta/a/tu/prestashop -type f -exec chmod 644 {} \;.
Paso 3: Comprueba el archivo .htaccess
El archivo .htaccess es un archivo de configuración que controla el comportamiento del servidor Apache. Si está dañado o tiene reglas incompatibles, puede provocar el error 500.
Cómo restaurar el .htaccess
- Renombra el archivo
.htaccessactual a.htaccess.bak(así lo guardas como copia). - Ve a tu panel de administración de PrestaShop (si puedes acceder) y ve a Parámetros avanzados > Rendimiento.
- Haz clic en "Guardar" sin cambiar nada. Esto regenerará un
.htaccessnuevo. - Si no puedes acceder al panel, descarga un
.htaccesslimpio de la instalación original de PrestaShop (según tu versión) y súbelo.
[WARNING]
No uses un .htaccess de una versión diferente de PrestaShop. Podría no ser compatible y causar más problemas.
Paso 4: Aumenta el límite de memoria PHP
PrestaShop es una plataforma bastante exigente. Si tu tienda tiene muchos productos, módulos o un tema pesado, puede quedarse sin memoria PHP y lanzar el error 500.
Cómo aumentar el límite de memoria
Busca el archivo php.ini en tu servidor o crea uno nuevo en la raíz de PrestaShop (si no existe). Añade o modifica esta línea:
memory_limit = 256M
Si no tienes acceso al php.ini, puedes hacerlo desde el archivo .htaccess:
php_value memory_limit 256M
O desde el archivo config/defines.inc.php, añadiendo esta línea al principio:
ini_set('memory_limit', '256M');
En Syspanel, también puedes cambiarlo desde la sección "PHP" o "Configuración de PHP" si está disponible.
[TIP]
Aunque 256M es un buen punto de partida, algunas tiendas grandes necesitan 512M o incluso más. Ve subiendo poco a poco hasta que el error desaparezca.
Paso 5: Desactiva módulos y temas sospechosos
Los módulos de terceros son una causa muy común del PrestaShop error interno. Un módulo mal codificado o incompatible con tu versión puede romper toda la tienda.
Si tienes acceso al panel de administración
- Ve a Módulos > Módulos y servicios.
- Ordena la lista por "Últimamente instalados" o busca los módulos que hayas instalado recientemente.
- Desactiva los módulos uno a uno, recargando la tienda después de cada uno, hasta encontrar el culpable.
Si NO tienes acceso al panel
Necesitarás desactivar los módulos desde la base de datos:
- Accede a phpMyAdmin desde Syspanel (o el que uses).
- Busca la tabla
ps_module(el prefijo puede variar). - Localiza el módulo que crees que está causando el problema.
- Cambia el campo
activede1a0.
También puedes renombrar la carpeta del módulo en el servidor (dentro de /modules/) para desactivarlo temporalmente. Por ejemplo, cambia ps_banner a ps_banner_off.
[WARNING]
Si renombras la carpeta de un módulo, asegúrate de no romper ninguna referencia. Es un método rápido pero un poco "bruto". Úsalo solo si no tienes otra opción.
Paso 6: Revisa la versión de PHP
PrestaShop es muy sensible a la versión de PHP. Si tu hosting ha actualizado PHP y tu PrestaShop es antiguo, es muy probable que aparezca el error 500.
Versiones de PHP recomendadas
- PrestaShop 1.6: PHP 5.6 o 7.0 (como máximo)
- PrestaShop 1.7: PHP 7.1 a 7.4 (dependiendo de la versión exacta)
- PrestaShop 8.x: PHP 7.4 a 8.1
Cómo cambiar la versión de PHP
En Syspanel, ve a la sección "PHP" o "Versión de PHP" y selecciona la versión compatible con tu PrestaShop. En cPanel, busca el icono "Select PHP Version" o "MultiPHP Manager".
[INFO]
Si tu PrestaShop es muy antiguo y tu hosting ya no soporta versiones antiguas de PHP, considera actualizar PrestaShop a una versión más reciente. Es un trabajo que requiere tiempo, pero es la solución a largo plazo.
Paso 7: Verifica la base de datos
A veces, el error 500 no está en los archivos sino en la base de datos. Una tabla corrupta o un problema de conexión pueden causar este fallo.
Cómo comprobar la base de datos
- Accede a phpMyAdmin.
- Selecciona la base de datos de tu PrestaShop.
- Haz clic en "Comprobar" o "Verificar" (según la interfaz).
- Si encuentras errores, ejecuta "Reparar" o "Optimizar".
También puedes comprobar que los datos de conexión en el archivo config/settings.inc.php (o app/config/parameters.php en versiones modernas) son correctos. Asegúrate de que el host, usuario, contraseña y nombre de base de datos son los correctos.
Paso 8: Limpia la caché de PrestaShop
La caché acumulada puede causar conflictos, especialmente después de actualizaciones o cambios en los archivos.
Cómo limpiar la caché
- Si tienes acceso al panel: ve a Parámetros avanzados > Rendimiento y haz clic en "Vaciar la caché".
- Si no tienes acceso: borra el contenido de la carpeta
/var/cache/en versiones modernas de PrestaShop (1.7 y 8.x). En PrestaShop 1.6, la caché está en/cache/y/cache/smarty/.
[TIP]
También puedes borrar las cookies de tu navegador o probar en modo incógnito, ya que a veces el error se debe a una caché del navegador desactualizada.
Paso 9: Comprueba el espacio en disco y los límites del hosting
Un disco duro lleno puede provocar errores inesperados, incluido el 500. Revisa el uso de espacio en tu panel de control.
Cómo comprobar el espacio en Syspanel
- Ve a la sección de "Estadísticas" o "Uso de disco".
- Si estás al 90% o más, borra archivos temporales, logs antiguos o copias de seguridad que ya no necesites.
También es posible que tu plan de hosting tenga límites de CPU o memoria que estés superando. Contacta con tu proveedor de hosting para verificar si hay restricciones activas.
Paso 10: Reinstala los archivos principales de PrestaShop
Si todo lo anterior falla, puede que tengas archivos corruptos o incompletos. La solución es reinstalar los archivos principales de PrestaShop sin tocar la base de datos ni los módulos personalizados.
Cómo hacerlo
- Descarga la misma versión de PrestaShop que tienes instalada desde el sitio oficial.
- Descomprime el archivo en tu ordenador.
- Sube los archivos principales (excepto la carpeta
/config/y/install/) por FTP, sobrescribiendo los existentes. - No subas el archivo
settings.inc.phpniparameters.phppara no perder la configuración de la base de datos. - Borra la carpeta
/install/del servidor si existe.
[WARNING]
Este proceso debe hacerse con mucho cuidado. Si sobrescribes archivos que has modificado (como el tema o módulos personalizados), los perderás. Haz una copia de seguridad completa antes.
Preguntas frecuentes (FAQ)
¿Por qué mi PrestaShop da error 500 después de una actualización?
Las actualizaciones pueden romper la compatibilidad con módulos o temas antiguos. Prueba a desactivar los módulos de terceros y a limpiar la caché. Si el problema persiste, revisa la versión de PHP.
¿El error 500 puede deberse a un ataque de hackers?
Sí, es posible. Si sospechas de un ataque, revisa los archivos modificados recientemente y los logs del servidor. Cambia todas las contraseñas y considera instalar un módulo de seguridad.
¿Cuánto tiempo se tarda en solucionar el error 500?
Depende de la causa. Si es un problema de permisos, puede resolverse en minutos. Si es un módulo incompatible, puede llevarte un par de horas. Si es algo más complejo, como un problema del servidor, tendrás que contactar con tu hosting.
¿Debo contactar con mi proveedor de hosting?
Si has agotado todos los pasos anteriores y el error persiste, sí. Ellos pueden revisar los logs del servidor y verificar si hay algún problema a nivel de infraestructura.
Conclusión
El error 500 PrestaShop puede parecer un monstruo, pero con paciencia y método, casi siempre tiene solución. Hemos visto desde los pasos más básicos (activar el modo debug, revisar permisos) hasta los más avanzados (reinstalar archivos, comprobar la base de datos). La clave está en ir descartando causas una a una sin saltarte pasos.
Recuerda que, si usas Syspanel (el panel que antes se llamaba HestiaCP y que se accede por el puerto 2106), todos los pasos descritos son aplicables, solo cambia la interfaz. Y si en algún momento te sientes abrumado, no dudes en buscar ayuda de un profesional o contactar con tu proveedor de hosting.
Espero que esta guía te haya sido de utilidad y que tu tienda vuelva a funcionar en breve. Si te ha ayudado, compártela con otros comerciantes que puedan estar pasando por lo mismo. ¡Buena suerte y a vender!
