Resolver error 500 en PrestaShop con Syspanel
¡Hola! Soy el técnico de soporte y entiendo perfectamente lo frustrante que puede ser ver una pantalla en blanco o el temido error 500 en tu tienda PrestaShop. No te preocupes, es uno de los problemas más comunes y, en la mayoría de los casos, tiene solución.
En esta guía completa y fácil de seguir, te explicaré paso a paso cómo solucionar el error 500 en PrestaShop utilizando tu panel de control Syspanel (recuerda, su acceso es por el puerto 2106). Vamos a desglosar las causas más habituales y las soluciones más efectivas para que tu tienda vuelva a funcionar en minutos.
¿Qué es el Error 500 en PrestaShop?
El error 500, también conocido como "Error Interno del Servidor", es la forma que tiene el servidor de decir: "Algo salió mal, pero no sé exactamente qué". Es un error genérico que puede deberse a múltiples factores, desde un archivo de configuración dañado hasta un plugin incompatible.
[INFO] A diferencia de un error 404 (página no encontrada) o un error 403 (acceso prohibido), el error 500 es un problema interno del servidor web. Esto significa que la solución suele estar en tu panel de control o en los archivos de tu tienda.
Paso 1: Accede a Syspanel (antes HestiaCP)
Lo primero que necesitas es acceder a tu panel de control. Syspanel es la herramienta que te permite gestionar tu hosting, archivos, bases de datos y dominios. Para ello:
- Abre tu navegador web favorito (Chrome, Firefox, Edge, etc.).
- En la barra de direcciones, escribe:
https://tudominio.com:2106(recuerda que el puerto es 2106). - Introduce tu usuario y contraseña de Syspanel. Si no los recuerdas, contacta con tu proveedor de hosting.
Una vez dentro, ya tienes el control para empezar a diagnosticar.
Paso 2: Habilita el Modo Debug de PrestaShop (La solución más rápida)
El error 500 es muy genérico. Para obtener un mensaje de error específico, debemos "obligar" a PrestaShop a que nos cuente qué está fallando. Esto se hace activando el Modo Debug.
¿Cómo activar el Modo Debug desde Syspanel?
-
En Syspanel, busca la sección "Administrador de archivos" (suele ser un icono de carpeta). Haz clic para abrirlo.
-
Navega hasta la carpeta raíz de tu tienda PrestaShop. Normalmente es
public_htmlowww. Si tienes un subdominio, busca su carpeta específica. -
Busca el archivo llamado
config/defines.inc.php. Haz clic derecho sobre él y selecciona "Editar". -
Dentro del archivo, busca la siguiente línea de código (puedes usar la función de búsqueda
Ctrl+FoCmd+F):define('_PS_MODE_DEV_', false); -
Cámbiala por:
define('_PS_MODE_DEV_', true); -
Guarda los cambios (icono de disquete o
Ctrl+S) y cierra el editor. -
Ahora, recarga tu tienda PrestaShop en el navegador.
[TIP] Si el problema persiste, también puedes añadir estas dos líneas justo debajo para obtener aún más detalles:
define('_PS_DISPLAY_COMPATIBILITY_WARNING_', true); ini_set('display_errors', 'on');
¿Qué verás ahora?
En lugar de la pantalla en blanco del error 500, verás un mensaje de error mucho más descriptivo, algo como:
Fatal error: Uncaught Error: Call to undefined function...(Error de un módulo o tema).Parse error: syntax error, unexpected...(Error de sintaxis en un archivo editado).Warning: require(...): failed to open stream...(Archivo faltante o permisos incorrectos).
Anota ese mensaje. Te dará la pista definitiva para saber qué está causando el error.
[WARNING] Una vez que hayas solucionado el error, NO OLVIDES volver a cambiar el valor a
falseen el archivodefines.inc.php. Dejar el Modo Debug activado en una tienda en producción es un riesgo de seguridad y puede mostrar información sensible a tus visitantes.
Paso 3: Causas Comunes y Cómo Solucionarlas (Guía de Acción)
Basándonos en el mensaje de error que viste en el paso anterior, aquí tienes las soluciones para los casos más frecuentes.
### Causa 1: Módulo o Tema Incompatible (El más común)
Si el error menciona un nombre de módulo (ej: ps_banner, mycustommodule) o una función de un tema, el culpable es un módulo o tema.
Solución desde Syspanel:
- Ve al Administrador de archivos de Syspanel.
- Navega a la carpeta
/public_html/modules/. - Busca la carpeta del módulo problemático (el que aparecía en el error).
- Renómbrala añadiendo un guión bajo al final, por ejemplo:
moduloproblema_omoduloproblema_old. Esto desactiva el módulo de forma forzosa. - Recarga tu tienda. Si el error desaparece, confirma que ese módulo es el problema.
- Para temas: El proceso es similar, pero en la carpeta
/public_html/themes/. Renombra la carpeta de tu tema activo. PrestaShop usará el tema por defecto ("classic") automáticamente.
[INFO] Si no sabes cuál es el módulo o tema problemático, desactívalos todos de golpe. Conecta a tu base de datos desde Syspanel (sección "Bases de Datos" -> "phpMyAdmin"), selecciona la BD de tu tienda y ejecuta esta consulta SQL:
UPDATE ps_modules SET active = 0;¡OJO! Esto desactivará todos los módulos. Luego, desde el back office de PrestaShop (si puedes acceder), ve reactivándolos de uno en uno para identificar el culpable.
### Causa 2: Error de Permisos en Archivos
A veces, al subir archivos o instalar módulos, los permisos de las carpetas se corrompen. Un error de "permiso denegado" es una señal clara.
Solución desde Syspanel:
- En el Administrador de archivos, selecciona la carpeta raíz de tu tienda (
public_html). - Busca una opción que se llame "Permisos", "CHMOD" o "Propiedades".
- Aplica los permisos estándar recomendados para PrestaShop:
- Carpetas: 755
- Archivos: 644
- Muchos paneles Syspanel tienen un botón de "Restablecer permisos" que lo hace automáticamente. Si no, deberás hacerlo manualmente, pero es más tedioso. Lo más importante es que las carpetas
cache,log,img,modules,themesyuploadtengan permisos 755.
### Causa 3: Archivo .htaccess Dañado
El archivo .htaccess es un archivo de configuración oculto que controla las reglas de URL de tu tienda. Si se daña, puede provocar un error 500.
Solución desde Syspanel:
- En el Administrador de archivos, asegúrate de tener activada la opción "Mostrar archivos ocultos" (suele ser un checkbox).
- Busca el archivo
.htaccessen la raíz de tu tienda (public_html). - Renómbralo a
.htaccess_oldo.htaccess.bak. - Recarga tu tienda. Si funciona, el problema era ese archivo.
- Ve al back office de PrestaShop (ej:
tudominio.com/admin1234). - Ve a Configuración de la tienda > Rendimiento.
- Activa y desactiva la opción "URL amigables" y guarda. Esto forzará a PrestaShop a regenerar un nuevo
.htaccesslimpio.
### Causa 4: Límite de Memoria PHP Excedido
Si tu tienda empieza a dar error 500 cuando realizas acciones pesadas (importar productos, generar un sitemap, etc.), es posible que el límite de memoria de PHP sea insuficiente.
Solución desde Syspanel:
- En Syspanel, busca la sección "Ajustes avanzados" o "Configuración PHP".
- Busca el parámetro
memory_limit. - Auméntalo a un valor más alto, por ejemplo, de
128Ma256Mo incluso512Msi tu hosting lo permite. - Guarda los cambios y reinicia el servicio web (Apache o Nginx) desde la misma sección de Syspanel.
Paso 4: Verifica el Error en los Logs del Servidor
Si el Modo Debug no te da una pista clara o no puedes activarlo, los logs del servidor son tu mejor aliado. Syspanel guarda registros de errores.
- En Syspanel, busca la sección "Logs" o "Registros de errores".
- Busca el archivo de error más reciente. Normalmente se llama
error.logophp-error.log. - Ábrelo. Busca la fecha y hora exacta en que viste el error 500.
- La línea de error será muy técnica, pero busca palabras clave como
PHP Fatal error,require_once,class not foundo el nombre de un módulo.
Preguntas Frecuentes (FAQ)
¿Por qué no puedo acceder al back office de PrestaShop?
Si el error 500 también te impide acceder al back office, las soluciones desde Syspanel (pasos 2, 3 y 4) son las únicas que te funcionarán, ya que no necesitas entrar a la tienda. Siempre puedes desactivar módulos renombrando carpetas o editar archivos de configuración.
¿El error 500 es peligroso para mi tienda?
No, no es peligroso para tus datos. Es un error de funcionamiento. Tus productos, clientes y pedidos están seguros en la base de datos. Solo la parte visible de la web deja de funcionar.
¿Qué hago si después de todo sigue el error?
Si has seguido todos los pasos y el error persiste, el problema podría ser más complejo, como un error en el servidor web (Apache/Nginx) o en la configuración de PHP. En ese caso, contacta a tu proveedor de hosting y muéstrales los logs de error que encontraste. Ellos tendrán acceso a capas más profundas del servidor.
¿Cada cuánto debo revisar los permisos?
No es necesario hacerlo a diario. Solo debes revisarlos si instalas muchos módulos, subes archivos manualmente o si empiezas a ver errores de permisos. Un buen mantenimiento mensual es suficiente.
Resumen Final
Recuerda, ante un error 500 en PrestaShop:
- No entres en pánico. Es solucionable.
- Accede a Syspanel (puerto 2106).
- Activa el Modo Debug para obtener un mensaje específico.
- Identifica la causa: módulo, permisos,
.htaccesso límite de memoria. - Aplica la solución correspondiente desde el administrador de archivos o la configuración PHP.
- Desactiva el Modo Debug una vez solucionado.
Con esta guía, tendrás las herramientas para solucionar el error 500 tú mismo de forma rápida y segura. ¡Tu tienda volverá a estar en línea en un abrir y cerrar de ojos! Si tienes cualquier otra duda, no dudes en consultarnos.
