PrestaShop en pantalla en blanco: por qué pasa y cómo arreglarlo
Abres tu tienda y no hay nada: una página totalmente en blanco, sin mensaje ni código de error. Es el temido «White Screen of Death». Tranquilo: tiene causa y solución. Te enseñamos a encontrarla.
En esta guía6 apartados
¿Pantalla en blanco o Error 500? No es lo mismo (pero casi)
Ambos son la misma familia de problema con distinta cara. El Error 500 muestra una página de error del servidor. La pantalla en blanco no muestra nada porque PHP sufre un error fatal y la visualización de errores (display_errors) está desactivada en el servidor. Resultado: el proceso muere en silencio y el navegador recibe una página vacía. La buena noticia: se diagnostican igual, haciendo que el error se muestre.
Las causas más habituales
- Un error fatal de PHP en un módulo, un override o el tema (una llamada a una función que no existe en tu versión de PHP, por ejemplo).
- Memoria agotada (
memory_limit): el back office es más pesado que el front, por eso a veces solo se queda en blanco la administración. - Caché corrupta tras un cambio (módulo, tema, actualización).
- Incompatibilidad de versión de PHP tras un cambio del hosting (qué PHP admite tu versión de PrestaShop).
- Permisos o un override mal subido tras una migración o una edición por FTP.
Cómo ver el error que se esconde detrás del blanco
No puedes arreglar lo que no ves. Haz que PrestaShop te enseñe el fallo con el modo debug:
- Abre
config/defines.inc.phpy cambiadefine('_PS_MODE_DEV_', false);pordefine('_PS_MODE_DEV_', true);. Recarga: con suerte, aparece el error PHP exacto (archivo y línea). - Si sigue en blanco, el servidor tiene
display_errorsforzado a off. Entonces mira el registro de errores de PHP del hosting: en muchos paneles, «Registros de errores», o un archivoerror_logen la carpeta de la tienda. El «Fatal error» estará ahí, con el archivo y la línea. (En nuestra prueba con PrestaShop 9.1 no aparecía envar/logs/: ese registro es de PrestaShop, no de PHP.)
_PS_MODE_DEV_ en false al terminar. El modo debug en producción expone información de tu tienda.Cómo recuperarla, paso a paso
- Vacía la caché: borra el contenido de
var/cache/por FTP. Muchas pantallas en blanco se van solo con esto. - ¿El log señala un módulo? Desactívalo renombrando su carpeta en
modules/(p. ej.modulo→modulo_off) y recarga. - ¿Solo el back office? Sube
memory_limita 256M/512M y borra caché. Suele bastar. Si ni siquiera llegas a entrar: no puedo entrar al panel. - ¿Apareció tras cambiar PHP? Vuelve a la versión anterior desde el hosting o actualiza el módulo/tema incompatible.
- ¿Un override roto? Renombra el archivo que señala el error (p. ej.
override/classes/controller/FrontController.php→FrontController.php_off) y vacía otra vezvar/cache/: PrestaShop guarda la lista de overrides en la caché y, si no, sigue buscando el archivo y falla con «Failed opening required». Ojo: en nuestra prueba con PrestaShop 9.1, la opción «Desactivar todos los métodos overrides» del panel no lo arregló. - Si no localizas la causa, restaura una copia de seguridad reciente. (Por eso un mantenimiento con backups automáticos te salva el día.)
Cuándo conviene que lo veamos nosotros
Si la tienda está en blanco, estás perdiendo ventas a cada minuto y llevas un rato dando palos de ciego, lo rentable no es seguir probando: es que lo resuelva alguien que ya ha levantado decenas de tiendas. Nosotros lo hacemos:
- Rescate de tienda PrestaShop: la dejamos online y estable; empezamos el mismo día laborable en que nos das acceso.
- Mantenimiento PrestaShop: actualizaciones, backups y vigilancia para que no se repita.
- ¿Buscabas el Error 500? También lo cubrimos en esa guía.
¿Tu tienda está en blanco ahora mismo?
No esperes: empezamos el mismo día laborable en que nos das acceso. Rescate desde 149 €: entramos, encontramos el fallo y dejamos tu tienda funcionando. Escríbenos directamente por WhatsApp.
Preguntas frecuentes
¿La pantalla en blanco es lo mismo que el Error 500?
display_errors está off. Se diagnostican igual: activando el modo debug.Se me queda en blanco solo el back office, ¿por qué?
var/cache/ y revisa el último módulo tocado.¿Pierdo la tienda si veo blanco?
Activé el debug y sigo viendo blanco, ¿ahora qué?
display_errors en off. Mira el registro de errores de PHP del hosting («Registros de errores» o un archivo error_log en la carpeta de la tienda): el fatal estará ahí. En var/logs/ no lo encontramos en nuestra prueba con PrestaShop 9.1.