Error 500 en PrestaShop: causas y cómo solucionarlo
Tu tienda devuelve una página en blanco o un "Error 500 - Internal Server Error" y, mientras tanto, no vendes. Vamos al grano: por qué ocurre, cómo encontrar la causa real y cómo arreglarlo paso a paso.
Qué es un Error 500 (en cristiano)
El HTTP 500 es la forma que tiene el servidor de decir "algo ha petado al ejecutar tu tienda, pero no te voy a contar el qué". Por seguridad, PrestaShop oculta el detalle del error en producción. Por eso ves una página genérica (o en blanco) en lugar del problema real. El truco para resolverlo siempre es el mismo: hacer que el error se muestre, leerlo y atacar la causa.
Las 6 causas más frecuentes
- Un módulo recién instalado o actualizado. Es, con diferencia, la causa nº1. Un módulo incompatible con tu versión de PrestaShop o de PHP tumba la tienda entera.
- Cambio de versión de PHP en el hosting. Si tu hosting actualizó PHP (p. ej. de 7.4 a 8.1) y tu tienda o un módulo no son compatibles, aparece el 500.
- Memoria insuficiente (
memory_limit). Tiendas grandes o procesos pesados que superan el límite de memoria PHP del servidor. - Archivo
.htaccesscorrupto tras regenerar URLs amigables o un cambio de servidor. - Un override o una personalización con un error de PHP (un punto y coma de menos puede tirar todo).
- Permisos de archivos o conexión a la base de datos mal configurados tras una migración.
Cómo encontrar la causa real (modo debug)
No adivines: que PrestaShop te diga el error exacto. Edita el archivo config/defines.inc.php y cambia esta línea:
- Busca
define('_PS_MODE_DEV_', false); - Cámbiala a
define('_PS_MODE_DEV_', true); - Recarga la página: ahora verás el error PHP concreto (archivo y línea).
false en cuanto termines. Dejar el modo debug activo en producción expone información sensible de tu tienda.Si la página sigue en blanco, mira los logs de error: el error_log de tu hosting (cPanel → Registros de errores) y var/logs/ dentro de PrestaShop. Ahí suele estar el "Fatal error" que delata al módulo o archivo culpable.
Cómo solucionarlo, paso a paso
- ¿Apareció tras instalar/actualizar un módulo? Desactívalo. Si no puedes entrar al back office, renómbralo por FTP en
modules/(p. ej.nombre-modulo→nombre-modulo_off) y recarga. - ¿Cambió la versión de PHP? Vuelve a la versión anterior desde el panel del hosting o actualiza la tienda/módulo a una versión compatible.
- ¿Error de memoria? Sube
memory_limita 256M o 512M en elphp.inio desde el hosting. - ¿
.htaccessroto? Regenéralo en Parámetros avanzados → Rendimiento o restaura una copia previa. - Limpia la caché (borra el contenido de
var/cache/): muchos 500 desaparecen al vaciarla tras un cambio. - Restaura una copia de seguridad si el error vino de un cambio que no localizas. (Por eso el mantenimiento con backups automáticos es oro.)
Cuándo merece la pena llamar a un experto
Si la tienda está caída, vendes a diario y no encuentras la causa en 15-20 minutos, cada hora que pasa son ventas perdidas. Ahí lo rentable no es seguir probando a ciegas, sino que lo resuelva alguien que lo ha visto cien veces. Nosotros hacemos exactamente eso:
- Rescate de tienda PrestaShop — caída, hackeo o update roto, lo levantamos.
- Mantenimiento mensual — actualizaciones, backups y monitorización para que esto no vuelva a pasarte.
- Optimización de velocidad — si además va lenta, la dejamos rápida y estable.
¿Tu tienda está caída ahora mismo?
No esperes: lo arreglamos hoy. Rescate desde 149 € (mismo día) — entramos, encontramos el fallo y dejamos tu tienda funcionando. Escríbenos directamente por WhatsApp y te contestamos ya.
Preguntas frecuentes
¿Por qué mi PrestaShop da Error 500 de repente?
.htaccess corrupto. Activa el modo debug para ver el error real.¿Pierdo datos si tengo un Error 500?
¿Cómo activo el modo debug?
config/defines.inc.php pon define('_PS_MODE_DEV_', true);. Verás el error PHP exacto. Vuelve a false al terminar.