Solución de problemas: Error 500 en PrestaShop
¡Hola! Soy tu técnico de soporte amigable. Entiendo que ver un Error 500 en tu tienda PrestaShop puede ser frustrante, especialmente si no sabes por dónde empezar. No te preocupes, es uno de los errores más comunes y, con la guía adecuada, podrás solucionarlo paso a paso.
Este error suele significar que algo salió mal en el servidor, pero no te dice exactamente qué. Por eso, vamos a convertir ese mensaje críptico en una solución clara. A lo largo de este artículo, te enseñaré desde lo más básico (como limpiar la caché) hasta técnicas más avanzadas (como activar el modo debug de PrestaShop). Todo explicado de forma sencilla, sin tecnicismos complicados.
¿Qué vas a aprender aquí?
- Qué es el Error 500 y por qué aparece.
- Los pasos más efectivos para solucionar error 500 en PrestaShop.
- Cómo usar el debug PrestaShop para encontrar la causa exacta.
- Consejos para evitar futuros PrestaShop problemas.
Vamos allá.
¿Qué es el Error 500 en PrestaShop?
El Error 500, también conocido como "Internal Server Error", es una respuesta genérica del servidor que indica que algo falló internamente, pero no da detalles. En PrestaShop, esto puede deberse a:
- Un módulo o tema incompatible tras una actualización.
- Un error en la configuración del servidor (límites de memoria, tiempo de ejecución, etc.).
- Archivos corruptos o permisos incorrectos.
- Problemas con la base de datos.
- Un plugin de caché mal configurado.
Importante: A veces el error aparece solo en algunas páginas (como el carrito o el panel de administración) y otras veces en toda la tienda. La solución dependerá de dónde ocurra.
Primeros pasos: Lo que puedes hacer sin ser experto
Antes de meterte en código o archivos de configuración, prueba estas soluciones rápidas. La mayoría de los PrestaShop problemas se resuelven con estos pasos.
1. Borra la caché de PrestaShop
La caché acumulada puede causar conflictos. Es lo primero que debes probar:
- Accede a tu panel de administración de PrestaShop (si puedes).
- Ve a Parámetros Avanzados > Rendimiento.
- Haz clic en Borrar caché (tanto la de Smarty como la de caché de página).
- Si no puedes acceder al panel, borra manualmente la carpeta
/cache/smarty/cachey/cache/smarty/compilemediante FTP o el administrador de archivos de tu hosting.
[TIP] Si usas Syspanel (antes conocido como HestiaCP, accesible por el puerto 2106), puedes usar el administrador de archivos integrado para borrar estas carpetas fácilmente.
2. Desactiva temporalmente los módulos no esenciales
Un módulo recién instalado o actualizado suele ser el culpable. Si no puedes acceder al panel de administración, hazlo por FTP:
- Ve a la carpeta
/modulesde tu instalación de PrestaShop. - Busca la carpeta del módulo sospechoso (por ejemplo, el último que instalaste) y renómbrala añadiendo
_oldal final (ej:mimodulo_old). Esto lo desactiva. - Si el error desaparece, ya sabes quién es el responsable.
3. Revisa los logs del servidor
El servidor guarda registros de errores. Si tu hosting usa Syspanel (puerto 2106), ve a la sección Logs y busca errores recientes. También puedes acceder al archivo error.log en la raíz de tu dominio (a veces está en /var/log/ o en la carpeta /logs de tu hosting).
Busca líneas que contengan PHP Fatal error o 500 Internal Server Error. Te darán pistas sobre el archivo y la línea exacta del problema.
Activar el modo debug de PrestaShop (la clave para solucionar el error)
El debug PrestaShop es tu mejor amigo. Te mostrará el error real en pantalla, en lugar del genérico "Error 500". Aquí te explico cómo hacerlo.
Paso 1: Accede a los archivos de configuración
Necesitas editar el archivo config/defines.inc.php de tu instalación. Puedes hacerlo mediante FTP o el administrador de archivos de tu panel de control.
Paso 2: Modifica la línea de debug
Busca esta línea:
define('_PS_MODE_DEV_', false);
y cámbiala a:
define('_PS_MODE_DEV_', true);
Si no existe, agrégala al final del archivo, justo antes de la línea <?php final.
Paso 3: Guarda y recarga la página
Ahora, al recargar la página donde tenías el Error 500, verás un mensaje detallado con el error real, como:
Fatal error: Call to undefined function(indica un módulo o tema con funciones faltantes).Parse error: syntax error(error en un archivo PHP).Allowed memory size exhausted(límite de memoria insuficiente).
[WARNING] No dejes el modo debug activado en una tienda en producción, ya que muestra información sensible. Una vez solucionado el error, vuelve a poner _PS_MODE_DEV_ en false.
Paso 4: Interpreta el error
- Si ves "Allowed memory size": Aumenta el límite de memoria en el archivo
php.ini(o en el panel de control, busca "Memory Limit" y ponlo a 256M o 512M). - Si ves "Call to undefined function": El módulo o tema está llamando a una función que no existe. Reinstala o actualiza el módulo/tema.
- Si ves "Parse error": Hay un error de sintaxis en un archivo. Revisa la línea indicada y corrige el código (o restaura el archivo original desde una copia de seguridad).
Soluciones avanzadas para errores persistentes
Si el modo debug no te da una pista clara o el error sigue apareciendo, prueba estas opciones.
Aumentar los límites de PHP
Muchos errores 500 se deben a que PHP se queda sin memoria o tiempo de ejecución. En Syspanel (puerto 2106), ve a Configuración de PHP y ajusta estos valores:
memory_limit= 256M (o 512M si tienes muchos productos).max_execution_time= 120 (segundos).upload_max_filesize= 64M (para subir imágenes grandes).
Si no tienes acceso a Syspanel, edita el archivo php.ini en la raíz de tu dominio o crea un archivo .user.ini con estas líneas.
Revisar permisos de archivos y carpetas
Los permisos incorrectos pueden impedir que PrestaShop escriba archivos temporales. En tu panel de control (o FTP), asegúrate de que:
- Las carpetas tengan permisos 755.
- Los archivos tengan permisos 644.
- Las carpetas
/cache,/logy/uploadtengan permisos 777 (solo temporalmente para pruebas, luego vuelve a 755).
[INFO] En Syspanel, puedes cambiar permisos desde el administrador de archivos haciendo clic derecho sobre la carpeta.
Restaurar archivos originales
Si el error comenzó tras una actualización o instalación, restaura los archivos originales de PrestaShop. Puedes descargar la misma versión desde el sitio oficial y sobrescribir solo la carpeta /admin y /modules (si no tienes personalizaciones). Siempre haz una copia de seguridad antes.
Deshabilitar el tema actual
Si el error está en el frontend (la tienda visible), cambia temporalmente al tema predeterminado de PrestaShop (por ejemplo, "classic"). Para ello:
- Ve a la carpeta
/themesy renombra la carpeta de tu tema actual (ej:mitema_old). - PrestaShop usará el tema por defecto. Si el error desaparece, el problema es del tema.
Preguntas frecuentes (FAQ)
P: ¿Por qué veo el Error 500 solo en el panel de administración?
R: Generalmente es por un módulo de administración corrupto o por un límite de memoria bajo. Prueba a desactivar módulos recién instalados y aumentar el memory_limit.
P: ¿Puedo solucionar el Error 500 sin acceso al panel de administración?
R: Sí, usando FTP o el administrador de archivos de Syspanel (puerto 2106). Puedes borrar caché, desactivar módulos renombrando carpetas y activar el modo debug editando archivos.
P: ¿El error puede deberse a mi hosting?
R: Sí. Un servidor con recursos limitados (poca memoria RAM, CPU lenta) puede causar errores 500. Contacta a tu proveedor de hosting y pídele que revise los logs del servidor.
P: ¿Cómo evito futuros errores 500?
R: Mantén PrestaShop, módulos y temas actualizados. Haz copias de seguridad periódicas. No instales módulos de fuentes no confiables. Y usa un entorno de pruebas (staging) antes de aplicar cambios en producción.
P: ¿Qué hago si después de todo el error persiste?
R: Contacta al soporte técnico de tu hosting. Si tienes Syspanel, puedes abrir un ticket desde el panel. También puedes buscar ayuda en foros especializados de PrestaShop, pero asegúrate de compartir el error exacto que viste en el modo debug.
Conclusión
El error 500 PrestaShop puede parecer un monstruo, pero con estos pasos podrás domarlo. Recuerda: empieza por lo más simple (borrar caché), luego usa el debug PrestaShop para obtener pistas, y si nada funciona, revisa los límites de PHP y los permisos. No temas equivocarte; siempre puedes restaurar desde una copia de seguridad.
Si sigues esta guía, resolverás el 90% de los PrestaShop problemas relacionados con errores 500. Y si tienes dudas, aquí estoy para ayudarte. ¡Buena suerte con tu tienda!
