Resolución de errores

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.

Guía técnicaLectura ~5 minActualizado el
¿Tu tienda está en blanco ahora mismo? Empezamos el mismo día laborable en que nos das acceso: Rescatar mi tienda por WhatsApp.
En esta guía6 apartados
  1. ¿Pantalla en blanco o Error 500? No es lo mismo (pero casi)
  2. Las causas más habituales
  3. Cómo ver el error que se esconde detrás del blanco
  4. Cómo recuperarla, paso a paso
  5. Cuándo conviene que lo veamos nosotros
  6. Preguntas frecuentes
Lo primero: la pantalla en blanco no significa que hayas perdido la tienda. Tus productos, pedidos y clientes siguen en la base de datos. Es un fallo de ejecución de PHP, y se arregla en cuanto sabes qué lo provoca.
En vídeo (5 min): lo resolvemos en pantalla, en una tienda de demostración con PrestaShop 9. Al darle al play se carga YouTube. Verlo en YouTube

¿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

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:

  1. Abre config/defines.inc.php y cambia define('_PS_MODE_DEV_', false); por define('_PS_MODE_DEV_', true);. Recarga: con suerte, aparece el error PHP exacto (archivo y línea).
  2. Si sigue en blanco, el servidor tiene display_errors forzado a off. Entonces mira el registro de errores de PHP del hosting: en muchos paneles, «Registros de errores», o un archivo error_log en 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 en var/logs/: ese registro es de PrestaShop, no de PHP.)
Recuerda: vuelve a poner _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

  1. Vacía la caché: borra el contenido de var/cache/ por FTP. Muchas pantallas en blanco se van solo con esto.
  2. ¿El log señala un módulo? Desactívalo renombrando su carpeta en modules/ (p. ej. modulo → modulo_off) y recarga.
  3. ¿Solo el back office? Sube memory_limit a 256M/512M y borra caché. Suele bastar. Si ni siquiera llegas a entrar: no puedo entrar al panel.
  4. ¿Apareció tras cambiar PHP? Vuelve a la versión anterior desde el hosting o actualiza el módulo/tema incompatible.
  5. ¿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 vez var/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ó.
  6. 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:

¿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?
Son primos. El 500 muestra una página de error; el blanco no muestra nada porque PHP falla y display_errors está off. Se diagnostican igual: activando el modo debug.
Se me queda en blanco solo el back office, ¿por qué?
Suele ser un módulo/override que falla en administración, falta de memoria (el BO es más pesado) o caché corrupta. Borra var/cache/ y revisa el último módulo tocado.
¿Pierdo la tienda si veo blanco?
No. Tus datos están a salvo en la base de datos. Es un fallo de ejecución de PHP, recuperable en cuanto se identifica la causa.
Activé el debug y sigo viendo blanco, ¿ahora qué?
El servidor tiene 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.

← Volver al blog

Rescatar mi tienda por WhatsApp