{"id":999,"date":"2023-06-21T18:34:01","date_gmt":"2023-06-21T15:34:01","guid":{"rendered":"https:\/\/presta.site\/blog\/pantalla-blanca-de-la-muerte-en-prestashop-una-guia-paso-a-paso\/"},"modified":"2026-07-26T09:40:25","modified_gmt":"2026-07-26T06:40:25","slug":"pantalla-blanca-de-la-muerte-en-prestashop-una-guia-paso-a-paso","status":"publish","type":"post","link":"https:\/\/presta.site\/blog\/es\/pantalla-blanca-de-la-muerte-en-prestashop-una-guia-paso-a-paso\/","title":{"rendered":"Pantalla blanca de la muerte PrestaShop: gu\u00eda de correcci\u00f3n paso a paso"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Una <strong>pantalla blanca de la muerte PrestaShop<\/strong> es una p\u00e1gina en blanco sin mensaje &#8211; front office, Back Office, o ambos. Normalmente significa que PHP se detuvo antes de que la tienda pudiera renderizar el HTML. Esta gu\u00eda muestra c\u00f3mo activar el modo debug (incluso cuando el panel de administraci\u00f3n est\u00e1 ca\u00eddo), leer el error real y aplicar las soluciones que resuelven la mayor\u00eda de los casos de WSoD.<\/p>\n\n\n<!--more-->\n\n\n<p class=\"wp-block-paragraph\">Desde PrestaShop 1.7 en adelante (incluyendo 8 y 9), las opciones de depuraci\u00f3n se encuentran en <strong>Par\u00e1metros avanzados \u2192 Rendimiento<\/strong> cuando el Back Office todav\u00eda carga. Si la administraci\u00f3n tambi\u00e9n est\u00e1 en blanco, debes cambiar <code class=\"codecolorer text default\"><span class=\"text\">_PS_MODE_DEV_<\/span><\/code> en <code class=\"codecolorer text default\"><span class=\"text\">config\/defines.inc.php<\/span><\/code> a trav\u00e9s de SFTP o SSH. Las notas oficiales sobre esta pantalla est\u00e1n en la <a href=\"https:\/\/docs.prestashop-project.org\/v.9-documentation\/user-guide\/configuring-shop\/advanced-parameters\/performance\" target=\"_blank\" rel=\"noopener noreferrer\">documentaci\u00f3n de rendimiento de PrestaShop 9<\/a>. Haz una <a href=\"https:\/\/presta.site\/blog\/es\/como-crear-una-copia-de-seguridad-en-prestashop\/\">copia de seguridad completa de PrestaShop<\/a> antes de eliminar m\u00f3dulos o restaurar archivos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Qu\u00e9 significa normalmente una pantalla blanca de la muerte PrestaShop<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">La p\u00e1gina en blanco es un s\u00edntoma, no un \u00fanico error. Una pantalla blanca de la muerte PrestaShop significa que PHP encontr\u00f3 un error fatal, se qued\u00f3 sin memoria o fall\u00f3 antes de que Smarty pudiera imprimir algo. El modo de producci\u00f3n oculta ese detalle a prop\u00f3sito &#8211; para que los compradores nunca vean el rastro de la pila de errores. Tu trabajo es hacer visible el error y luego solucionar la causa.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Observa d\u00f3nde falla:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Solo en el front &#8211; a menudo un override del tema, un hook de m\u00f3dulo o un artefacto de cach\u00e9 en la tienda<\/li>\n<li>Solo en el Back Office &#8211; a menudo un m\u00f3dulo de administraci\u00f3n, una pesta\u00f1a o un override en <code class=\"codecolorer text default\"><span class=\"text\">override\/<\/span><\/code><\/li>\n<li>En ambos &#8211; credenciales de base de datos incorrectas, <code class=\"codecolorer text default\"><span class=\"text\">defines.inc.php<\/span><\/code> roto, ca\u00edda de la versi\u00f3n de PHP o un error fatal que se ejecuta en cada petici\u00f3n<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 1: Activar el modo debug<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">El modo debug imprime la excepci\u00f3n (o te dirige al registro) en lugar de una p\u00e1gina en blanco. Es preferible usar el Back Office cuando todav\u00eda se abre.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"484\" src=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_1-1024x484.png\" alt=\"P\u00e1gina de rendimiento de PrestaShop con el modo debug activado para solucionar la pantalla blanca de la muerte\" class=\"wp-image-630\" srcset=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_1-1024x484.png 1024w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_1-300x142.png 300w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_1-768x363.png 768w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_1-1536x726.png 1536w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_1.png 1611w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Inicia sesi\u00f3n en el Back Office.<\/li>\n<li>Ve a <strong>Par\u00e1metros avanzados \u2192 Rendimiento<\/strong>.<\/li>\n<li>En el bloque <strong>Modo debug<\/strong>, establece <strong>Modo debug<\/strong> en <strong>S\u00ed<\/strong>.<\/li>\n<li>Haz clic en <strong>Guardar<\/strong>.<\/li>\n<li>Recarga la URL en blanco en una ventana privada.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Si el Back Office tambi\u00e9n es una pantalla blanca de la muerte PrestaShop, edita el archivo en el disco. Descarga primero una copia de <code class=\"codecolorer text default\"><span class=\"text\">config\/defines.inc.php<\/span><\/code> (incluso si ya hiciste una copia de seguridad completa) para poder restaurar el original con un clic si la edici\u00f3n sale mal:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Abre <code class=\"codecolorer text default\"><span class=\"text\">config\/defines.inc.php<\/span><\/code> a trav\u00e9s de SFTP, SSH o el administrador de archivos del hosting y guarda una copia local.<\/li>\n<li>Busca <code class=\"codecolorer text default\"><span class=\"text\">define('_PS_MODE_DEV_', false);<\/span><\/code> (la redacci\u00f3n puede variar ligeramente seg\u00fan la versi\u00f3n).<\/li>\n<li>C\u00e1mbialo a <code class=\"codecolorer text default\"><span class=\"text\">define('_PS_MODE_DEV_', true);<\/span><\/code> y guarda.<\/li>\n<li>Recarga la p\u00e1gina que falla.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Vuelve a desactivar el modo debug cuando hayas terminado. Dejarlo activado en producci\u00f3n expone las rutas y los rastros de la pila a cualquiera que encuentre un error.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 2: Identificar el error<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Con el modo debug activado, la pantalla blanca de la muerte PrestaShop normalmente se convierte en una excepci\u00f3n legible. Toma nota del nombre de la clase, el nombre del m\u00f3dulo, la ruta del archivo en <code class=\"codecolorer text default\"><span class=\"text\">modules\/<\/span><\/code>, <code class=\"codecolorer text default\"><span class=\"text\">themes\/<\/span><\/code> o <code class=\"codecolorer text default\"><span class=\"text\">override\/<\/span><\/code>, y el n\u00famero de l\u00ednea. Esa cadena suele ser suficiente para elegir la soluci\u00f3n correcta a continuaci\u00f3n.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"469\" src=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_2-1024x469.png\" alt=\"Ejemplo de error PHP mostrado tras activar el modo debug de PrestaShop en una pantalla blanca\" class=\"wp-image-633\" srcset=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_2-1024x469.png 1024w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_2-300x137.png 300w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_2-768x352.png 768w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_2.png 1264w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Si la p\u00e1gina sigue en blanco incluso con <code class=\"codecolorer text default\"><span class=\"text\">_PS_MODE_DEV_<\/span><\/code> en true, revisa el registro de errores PHP del hosting (cPanel, Plesk o <code class=\"codecolorer text default\"><span class=\"text\">var\/logs\/<\/span><\/code> en algunas configuraciones). Un error de an\u00e1lisis en un archivo de configuraci\u00f3n puede detener la ejecuci\u00f3n antes de que se inicie la capa de depuraci\u00f3n de PrestaShop.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Fuentes comunes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Personalizaciones recientes<\/strong> &#8211; ediciones del tema, overrides o fragmentos de c\u00f3digo copiados<\/li>\n<li><strong>M\u00f3dulos<\/strong> &#8211; especialmente un m\u00f3dulo instalado o actualizado justo antes de la ca\u00edda<\/li>\n<li><strong>Cambios en el hosting<\/strong> &#8211; actualizaci\u00f3n de la versi\u00f3n de PHP, extensi\u00f3n faltante, l\u00edmite de memoria m\u00e1s bajo<\/li>\n<li><strong>Credenciales de base de datos<\/strong> &#8211; valores incorrectos en <code class=\"codecolorer text default\"><span class=\"text\">app\/config\/parameters.php<\/span><\/code> tras una migraci\u00f3n<\/li>\n<li><strong>Permisos de archivos<\/strong> &#8211; PHP no puede leer un archivo requerido o escribir en la cach\u00e9<\/li>\n<li><strong>L\u00edmite de memoria<\/strong> &#8211; errores fatales que mencionan memoria agotada<\/li>\n<li><strong>Cach\u00e9 obsoleta<\/strong> &#8211; plantillas compiladas rotas despu\u00e9s de una actualizaci\u00f3n<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 3: Solucionar el error<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"450\" src=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_3-1024x450.png\" alt=\"Opciones de rendimiento de PrestaShop utilizadas para aislar m\u00f3dulos y overrides tras una pantalla blanca de la muerte\" class=\"wp-image-636\" srcset=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_3-1024x450.png 1024w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_3-300x132.png 300w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_3-768x338.png 768w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2023\/05\/Screenshot_3.png 1155w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Relaciona la salida del modo debug con una de las rutas. Cambia una cosa a la vez y luego recarga.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Personalizaciones y overrides<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Deshaz el \u00faltimo cambio en el tema o override si lo conoces. En Rendimiento, prueba <strong>Desactivar todos los overrides<\/strong> \u2192 <strong>S\u00ed<\/strong>, guarda y vuelve a probar. Si la tienda vuelve a funcionar, el error est\u00e1 en <code class=\"codecolorer text default\"><span class=\"text\">override\/<\/span><\/code> o en un override de m\u00f3dulo &#8211; corrige o elimina ese archivo en lugar de dejar los overrides desactivados para siempre.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Errores de m\u00f3dulos<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">En Rendimiento, establece <strong>Desactivar los m\u00f3dulos no desarrollados por PrestaShop<\/strong> \u2192 <strong>S\u00ed<\/strong> y vuelve a probar. Si eso elimina la pantalla blanca de la muerte PrestaShop, renombra la carpeta del m\u00f3dulo sospechoso en <code class=\"codecolorer text default\"><span class=\"text\">modules\/<\/span><\/code> (o desinst\u00e1lalo desde el BO una vez que la administraci\u00f3n funcione) uno por uno hasta encontrar al culpable. Es preferible renombrar a eliminar para poder restaurar los archivos despu\u00e9s de identificarlo.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Hosting y PHP<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Compara <strong>Par\u00e1metros avanzados \u2192 Informaci\u00f3n<\/strong> con lo que el hosting dice que est\u00e1n ejecutando. Despu\u00e9s de una actualizaci\u00f3n de PHP, las extensiones faltantes o un manejo de errores m\u00e1s estricto a menudo se manifiestan como una p\u00e1gina en blanco. Pregunta al hosting qu\u00e9 versi\u00f3n de PHP y <code class=\"codecolorer text default\"><span class=\"text\">memory_limit<\/span><\/code> utiliza realmente el vhost.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Conexi\u00f3n a la base de datos<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Si el modo debug menciona el acceso a la base de datos o la tienda se cay\u00f3 justo despu\u00e9s de un cambio de servidor, verifica el host, nombre, usuario y contrase\u00f1a en <code class=\"codecolorer text default\"><span class=\"text\">app\/config\/parameters.php<\/span><\/code>. Los pasos completos est\u00e1n en nuestra gu\u00eda sobre <a href=\"https:\/\/presta.site\/blog\/es\/como-cambiar-la-configuracion-de-conexion-a-la-base-de-datos-en-prestashop\/\">c\u00f3mo cambiar la configuraci\u00f3n de conexi\u00f3n a la base de datos en PrestaShop<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Permisos y memoria<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Cuando el error nombra un archivo que PHP no puede abrir, corrige la propiedad\/permisos de esa ruta (propiedad t\u00edpica del usuario web; evita <code class=\"codecolorer text default\"><span class=\"text\">777<\/span><\/code> como soluci\u00f3n permanente). Para errores de memoria agotada, aumenta el <code class=\"codecolorer text default\"><span class=\"text\">memory_limit<\/span><\/code> en el <code class=\"codecolorer text default\"><span class=\"text\">php.ini<\/span><\/code> del vhost o pregunta al hosting &#8211; luego borra la cach\u00e9 y vuelve a probar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Cach\u00e9<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Desde Rendimiento, haz clic en <strong>Borrar la cach\u00e9<\/strong>. Si el BO est\u00e1 ca\u00eddo, elimina el contenido de <code class=\"codecolorer text default\"><span class=\"text\">var\/cache\/prod\/<\/span><\/code> (y <code class=\"codecolorer text default\"><span class=\"text\">var\/cache\/dev\/<\/span><\/code> si est\u00e1 presente) a trav\u00e9s del administrador de archivos o SSH, manteniendo las carpetas en s\u00ed. Los \u00e1rboles de cach\u00e9 enormes suelen ser m\u00e1s f\u00e1ciles de vaciar desde SSH que desde FTP.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 4: Cuando todav\u00eda necesitas ayuda<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Si el modo debug est\u00e1 activado, los m\u00f3dulos\/overrides est\u00e1n aislados, las credenciales coinciden y todav\u00eda tienes una pantalla blanca de la muerte PrestaShop, recopila: el texto exacto del error, la versi\u00f3n de PrestaShop, la versi\u00f3n de PHP y qu\u00e9 cambi\u00f3 por \u00faltima vez (m\u00f3dulo, despliegue, actualizaci\u00f3n del hosting). Publica eso en los foros de PrestaShop, o env\u00edalo a tu hosting o a un desarrollador que pueda leer los registros del servidor que no puedes ver solo desde la tienda.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 5: Restaurar desde una copia de seguridad<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Restaurar archivos o un volcado de base de datos es el \u00faltimo recurso &#8211; pierdes los cambios realizados despu\u00e9s de esa copia de seguridad. \u00dasalo cuando un mal despliegue no se puede revertir r\u00e1pidamente y ya tienes una copia reciente. C\u00f3mo hacer y mantener esas copias se explica en la <a href=\"https:\/\/presta.site\/blog\/es\/como-crear-una-copia-de-seguridad-en-prestashop\/\">gu\u00eda de copias de seguridad de PrestaShop<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Lista de verificaci\u00f3n r\u00e1pida<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Activa el modo debug (Rendimiento en el BO, o <code class=\"codecolorer text default\"><span class=\"text\">_PS_MODE_DEV_<\/span><\/code> en <code class=\"codecolorer text default\"><span class=\"text\">defines.inc.php<\/span><\/code>).<\/li>\n<li>Lee el error en pantalla o el registro de PHP.<\/li>\n<li>A\u00edsla los overrides y los m\u00f3dulos no nativos desde Rendimiento.<\/li>\n<li>Corrige las credenciales de la base de datos, permisos, memoria o cach\u00e9 seg\u00fan indique el mensaje.<\/li>\n<li>Desactiva el modo debug; restaura desde una copia de seguridad solo si nada m\u00e1s recupera la tienda.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">La mayor\u00eda de los casos de pantalla blanca de la muerte PrestaShop se resuelven una vez que el mensaje real de PHP es visible. Empieza con el modo debug, cambia una variable a la vez y mant\u00e9n una copia de seguridad lista antes de eliminar cualquier cosa que no puedas recuperar.<\/p>\n\n","protected":false},"excerpt":{"rendered":"<p>Soluciona una pantalla blanca de la muerte PrestaShop paso a paso: activa el modo debug, lee el error de PHP, a\u00edsla m\u00f3dulos y recupera la tienda.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[123],"tags":[],"class_list":["post-999","post","type-post","status-publish","format-standard","hentry","category-desarrollo"],"_links":{"self":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts\/999","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/comments?post=999"}],"version-history":[{"count":1,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts\/999\/revisions"}],"predecessor-version":[{"id":2024,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts\/999\/revisions\/2024"}],"wp:attachment":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/media?parent=999"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/categories?post=999"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/tags?post=999"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}