Solucionar errores 500 en PrestaShop: Guía para Syspanel
¡Hola! Si estás leyendo esto, probablemente has visto una pantalla en blanco o un mensaje de error 500 en tu tienda PrestaShop alojada en un servidor con Syspanel (antes conocido como HestiaCP). No te preocupes, es uno de los errores más comunes y, con esta guía, podrás solucionarlo paso a paso.
El error 500 es un error genérico del servidor. Significa que algo falló internamente, pero no te da muchos detalles. Por eso, vamos a usar las herramientas que nos ofrece Syspanel (accesible por el puerto 2106) para encontrar la causa raíz y aplicar la solución correcta.
¿Qué es un error 500 en PrestaShop y por qué ocurre?
Un error 500 PrestaShop Syspanel puede deberse a muchas causas, desde un plugin incompatible hasta un archivo de configuración dañado. Las razones más habituales son:
- Módulos o temas conflictivos: Después de una actualización o instalación, algún componente deja de funcionar.
- Problemas de permisos de archivos: PrestaShop necesita permisos específicos para escribir en carpetas como
cache,logoconfig. - Errores en el archivo
.htaccess: Una mala configuración de redirecciones o reglas puede romper el sitio. - Límite de memoria PHP excedido: Si tu tienda tiene muchos productos o módulos pesados, puede superar el límite de memoria.
- Problemas con la base de datos: Una tabla corrupta o una consulta mal formada.
Paso 1: Activar el modo debug de PrestaShop (la clave para entender el error)
Antes de tocar nada, vamos a hacer que PrestaShop nos muestre el error real en lugar de la pantalla en blanco. Para ello, activaremos el modo debug.
¿Cómo hacerlo desde Syspanel?
- Accede a Syspanel usando tu navegador:
https://tudominio.com:2106(recuerda, el puerto es el 2106). - Inicia sesión con tu usuario y contraseña de administrador del servidor.
- Ve a la sección "Archivos" o "Administrador de archivos". Busca la carpeta raíz de tu tienda PrestaShop (normalmente
public_htmloweb). - Localiza el archivo
config/defines.inc.php. Ábrelo con el editor de texto integrado de Syspanel. - Busca esta línea:
define('_PS_MODE_DEV_', false); - Cámbiala por:
define('_PS_MODE_DEV_', true); - Guarda el archivo.
[INFO] Si no ves el error después de esto, puede que el error 500 sea tan grave que impida la ejecución de PHP. En ese caso, pasa al siguiente paso para revisar los logs del servidor.
Ahora, recarga tu tienda. En lugar del error 500, verás un mensaje de error más descriptivo (por ejemplo, "Fatal error: Class 'X' not found" o "Allowed memory size exhausted"). Anota ese mensaje, te guiará hacia la solución.
Paso 2: Revisar los logs de error del servidor desde Syspanel
Syspanel guarda todos los errores del servidor. Es la mejor fuente de información si el modo debug no funciona.
Pasos para acceder a los logs:
- En Syspanel, busca la sección "Registros" o "Logs".
- Dentro, encontrarás el "Error log" de tu dominio. Haz clic en él.
- Verás una lista de errores recientes. Busca los que tengan la fecha y hora en que apareció el error 500.
- El error típico se verá así:
[28-Mar-2025 10:15:00 UTC] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted...
Copia el texto del error. Esto es lo que necesitas para diagnosticar el problema.
Paso 3: Soluciones comunes para el error 500 en PrestaShop
Dependiendo de lo que muestre el error, aplica una de estas soluciones.
Solución A: Aumentar el límite de memoria PHP
Si el error dice algo como "Allowed memory size exhausted", necesitas más memoria.
- En Syspanel, ve a "Ajustes del servidor" > "Configuración de PHP".
- Busca el parámetro
memory_limit. El valor por defecto suele ser128Mo256M. - Cámbialo a
512Mo incluso1024Msi tu servidor lo permite. - Guarda los cambios y reinicia el servicio PHP desde el mismo panel (normalmente hay un botón "Reiniciar PHP" o "Restart PHP-FPM").
[TIP] Si no encuentras la opción, puedes hacerlo manualmente editando el archivo
php.inidesde el administrador de archivos de Syspanel. Buscamemory_limity cámbialo.
Solución B: Desactivar un módulo problemático (sin acceso al back office)
Si el error aparece justo después de instalar o actualizar un módulo, ese módulo es el culpable. Pero si no puedes acceder al panel de administración, haz esto:
- Desde Syspanel, ve al administrador de archivos y entra en la carpeta
modulesde tu PrestaShop. - Localiza la carpeta del módulo sospechoso (por ejemplo,
superplugin). - Renombra la carpeta, por ejemplo, a
superplugin_old. Esto desactiva el módulo por completo. - Recarga tu tienda. Si el error desaparece, ya sabes quién es el culpable. Puedes borrar la carpeta renombrada después.
Solución C: Regenerar el archivo .htaccess
Un .htaccess corrupto es una causa muy común de error 500.
- En Syspanel, ve al administrador de archivos y busca el archivo
.htaccessen la raíz de tu PrestaShop. - Renómbralo a
.htaccess_old(esto lo desactiva). - Recarga tu tienda. Si funciona, el problema era el
.htaccess. - Para regenerarlo correctamente, entra al back office de PrestaShop (si puedes) o, si no, puedes crear uno nuevo desde Syspanel:
- Ve a "Ajustes del servidor" > "Apache" > "Editar configuración" (o similar). Busca la opción de "Regenerar .htaccess".
- O, manualmente, crea un archivo nuevo llamado
.htaccesscon el contenido básico que proporciona PrestaShop (puedes copiarlo de una instalación limpia).
Solución D: Reparar permisos de archivos y carpetas
PrestaShop necesita permisos específicos para funcionar. Un error común es que la carpeta cache no tenga permisos de escritura.
- En Syspanel, usa el administrador de archivos para navegar a la raíz de tu tienda.
- Selecciona todas las carpetas y archivos (o hazlo desde la terminal si te sientes cómodo).
- Busca una opción llamada "Permisos" o "CHMOD".
- Aplica los permisos recomendados para PrestaShop:
- Carpetas:
755(o775si hay problemas). - Archivos:
644(o664). - Archivos específicos como
config/settings.inc.php:644.
- Carpetas:
- Guarda los cambios. Luego, desde la misma interfaz, vacía la carpeta
cache(borra todo su contenido, pero no la carpeta en sí).
Paso 4: Desactivar el modo debug y restaurar la configuración
Una vez que hayas solucionado el error, es importante desactivar el modo debug para que tu tienda no muestre mensajes de error internos a los visitantes.
- Vuelve a abrir
config/defines.inc.phpdesde Syspanel. - Cambia
define('_PS_MODE_DEV_', true);de nuevo adefine('_PS_MODE_DEV_', false);. - Guarda el archivo.
- Borra la carpeta
cachenuevamente para que los cambios surtan efecto.
Preguntas Frecuentes (FAQ)
¿Por qué el error 500 solo aparece en algunas páginas?
Esto suele indicar un problema con un módulo o tema específico que se carga solo en esas páginas. Sigue la Solución B para identificar el módulo conflictivo.
¿Puedo solucionar el error 500 sin acceder a Syspanel?
Si no tienes acceso a Syspanel, necesitarás un cliente FTP (como FileZilla) y acceso a la base de datos. Sin embargo, Syspanel facilita mucho el proceso porque integra todas las herramientas. Si no lo tienes, contacta con tu proveedor de hosting.
¿El error 500 puede deberse a una actualización de PrestaShop?
Sí, especialmente si los módulos o el tema no son compatibles con la nueva versión. Siempre es recomendable hacer una copia de seguridad antes de actualizar.
¿Qué hago si después de todo el error persiste?
Si has probado todas las soluciones anteriores y el error 500 sigue apareciendo, puede ser un problema más grave, como un error en el núcleo de PrestaShop o una configuración incorrecta del servidor. En ese caso, te recomendamos:
- Restaurar una copia de seguridad reciente desde Syspanel (busca la sección "Copias de seguridad").
- Contactar al soporte técnico de tu hosting, proporcionándoles el error exacto que viste en los logs.
Conclusión
El error 500 PrestaShop Syspanel puede ser frustrante, pero con las herramientas adecuadas y un poco de paciencia, se puede resolver. Recuerda que Syspanel (puerto 2106) es tu mejor aliado: te permite ver logs, editar archivos, gestionar permisos y mucho más.
Resumen rápido para solucionar error 500 PrestaShop:
- Activa el modo debug en
config/defines.inc.php. - Revisa los logs de error en Syspanel.
- Aumenta la memoria PHP si es necesario.
- Renombra módulos o el
.htaccesspara aislar el problema. - Repara permisos de archivos.
- Desactiva el modo debug al finalizar.
¡Esperamos que esta guía te haya sido de ayuda! Si tienes más dudas, no dudes en consultar la documentación oficial de PrestaShop o el soporte de tu hosting. ¡Buena suerte con tu tienda!
