Cómo solucionar el error 'PrestaShop no carga' en cPanel (pantalla blanca)
¿Qué significa que PrestaShop no carga y aparece una pantalla blanca?
Cuando intentas acceder a tu tienda online y en lugar de ver tu catálogo de productos te encuentras con una página completamente blanca, sin texto ni mensajes de error, estás ante el famoso error PrestaShop de pantalla blanca. Es uno de los problemas más comunes y frustrantes para los propietarios de tiendas online, especialmente cuando no tienes experiencia técnica.
La buena noticia es que, en la mayoría de los casos, este fallo tiene una solución clara y accesible desde el panel de control de tu hosting, normalmente cPanel. La pantalla blanca suele ser un síntoma de un error interno del servidor, un problema de memoria, un conflicto entre módulos o un archivo corrupto. Vamos a desgranarlo paso a paso para que puedas recuperar tu tienda sin necesidad de ser un experto en programación.
En esta guía, te explicaré las causas más habituales y, sobre todo, te daré una solución errores práctica y ordenada. Al final, tendrás un plan de acción claro para que tu PrestaShop no carga deje de ser un dolor de cabeza.
¿Por qué ocurre la pantalla blanca en PrestaShop?
Antes de lanzarnos a modificar archivos, es importante entender qué está pasando. La pantalla blanca, técnicamente conocida como "error 500" o "WSOD" (White Screen of Death), significa que PHP está fallando al ejecutar el código de PrestaShop. Las causas más frecuentes son:
- Límite de memoria excedido: PrestaShop es una plataforma exigente. Si tu plan de hosting no tiene suficiente memoria PHP, el script se detiene en seco.
- Módulos o temas incompatibles: Tras una actualización o instalación de un módulo, puede generarse un conflicto que rompe la tienda.
- Archivos corruptos o incompletos: Si una actualización se interrumpió a mitad, es probable que algún archivo clave esté dañado.
- Errores de permisos: Si los archivos de la tienda tienen permisos incorrectos, el servidor no puede leerlos.
- Problemas con el archivo .htaccess: Este archivo de configuración es vital. Si está mal escrito, puede bloquear todo el acceso.
Ahora que sabemos qué puede fallar, vamos a diagnosticarlo. No te preocupes, todo se hace desde cPanel, que es el panel de control más común en los hostings.
Paso 1: Activa el modo de depuración para ver el error real
La pantalla blanca es tan frustrante porque no te dice nada. Por defecto, PrestaShop oculta los errores de PHP para no mostrar información sensible a los visitantes. Nuestro primer objetivo es hacer que el error se muestre para saber exactamente qué está fallando.
Para ello, tendremos que editar el archivo de configuración principal de PrestaShop, llamado config/defines.inc.php. Sigue estos pasos:
- Accede a cPanel con tus credenciales de hosting.
- Busca la sección "Administrador de archivos" y haz clic.
- Navega hasta la carpeta donde tienes instalada tu tienda. Normalmente es
public_html(o una subcarpeta si la tienes en un subdominio). - Dentro de la raíz de PrestaShop, entra en la carpeta
config. - Busca el archivo
defines.inc.php. Haz clic derecho sobre él y selecciona "Editar". - Busca la línea que dice:
define('_PS_MODE_DEV_', false); - Cambia
falseportrue. Debe quedar así:define('_PS_MODE_DEV_', true); - Guarda el archivo y cierra el editor.
[WARNING] No dejes el modo debug activado en una tienda en producción. Es un riesgo de seguridad, ya que muestra rutas y errores internos a los visitantes. Desactívalo en cuanto resuelvas el problema.
Ahora, vuelve a cargar tu tienda. En lugar de la pantalla blanca, deberías ver un mensaje de error en la parte superior o inferior de la página. Ese mensaje te dirá si el problema es de memoria, de una clase no encontrada, de una base de datos, etc. Anota ese mensaje, te será muy útil para el siguiente paso.
Paso 2: Aumenta el límite de memoria PHP (la solución más común)
Una de las causas más habituales del error PrestaShop es el límite de memoria. Si el mensaje que viste menciona Allowed memory size of X bytes exhausted, este es tu problema. La solución es aumentar el límite de memoria PHP desde cPanel.
Puedes hacerlo de dos maneras:
- Desde el selector de versión de PHP: En cPanel, busca la herramienta "Select PHP Version" o "MultiPHP Manager". Dentro, verás una pestaña llamada "Options" o "Opciones". Busca
memory_limity cámbialo a256Mo incluso512M. Guarda los cambios. - Editando el archivo .htaccess: Si no encuentras la opción anterior, puedes añadir una línea al final del archivo
.htaccessque se encuentra en la raíz de tu tienda. Usando el Administrador de archivos, edita.htaccessy añade esta línea:
php_value memory_limit 512M
Guarda el archivo y prueba de nuevo. Si el problema era la memoria, tu tienda debería cargar. Si no es el caso, sigue con el siguiente paso.
[TIP] No solo aumenta la memoria, también puedes revisar el
max_execution_timey subirlo a 300 si ves errores de tiempo de espera. Suele estar en la misma sección de opciones de PHP.
Paso 3: Revisa los módulos y temas conflictivos
Otra causa muy frecuente de la pantalla blanca es un módulo o tema que está dando problemas. Esto pasa mucho después de una actualización. Para descartarlo, vamos a forzar a PrestaShop a usar un tema por defecto y a desactivar los módulos no esenciales.
Desactivar módulos manualmente:
La forma más directa es renombrar la carpeta de módulos. Esto desactiva todos los módulos a la vez, pero ojo, también los que son necesarios. Es una prueba rápida.
- Ve al Administrador de archivos de cPanel.
- Entra en la raíz de PrestaShop.
- Busca la carpeta
modules. - Haz clic derecho y selecciona "Renombrar".
- Cámbiale el nombre a
modules_backup(o cualquier otro). - Crea una carpeta nueva llamada
modules(vacía). - Intenta cargar tu tienda.
Si ahora la tienda carga (aunque se vea fea y sin funcionalidades), el problema es uno de tus módulos. Para encontrar al culpable, tendrás que ir moviendo los módulos de la carpeta modules_backup a la nueva carpeta modules de uno en uno, recargando la tienda después de cada movimiento. Cuando vuelva a salir la pantalla blanca, habrás encontrado al culpable.
Cambiar el tema por defecto:
Si el problema no son los módulos, puede ser el tema. En la base de datos, hay una tabla llamada ps_shop_url o similar, pero es más fácil hacerlo por archivos.
- En el Administrador de archivos, entra en la carpeta
themes. - Deberías ver una o varias carpetas con los nombres de tus temas.
- Renombra la carpeta de tu tema activo (la que estés usando) a
tema_original. - Si tienes otro tema, renómbralo para que se llame como el original. Si no tienes otro, descarga el tema por defecto de PrestaShop y súbelo.
Esta es una solución un poco más técnica, pero es efectiva para aislar el problema.
[INFO] Si no quieres hacer esto manualmente, siempre puedes acceder a tu base de datos desde phpMyAdmin en cPanel y buscar la tabla
ps_themepara cambiar el tema activo, pero la opción de renombrar carpetas es más segura para novatos.
Paso 4: Verifica los permisos de archivos y carpetas
Los permisos incorrectos son otra causa clásica de que PrestaShop no carga. Si los archivos no tienen los permisos adecuados, PHP no puede leerlos o escribirlos.
- En el Administrador de archivos, selecciona todos los archivos y carpetas de la raíz de tu tienda (puedes ir a la raíz y usar Ctrl+A).
- Haz clic derecho y selecciona "Permisos".
- Se abrirá una ventana con números. Para carpetas, el valor correcto es
755. Para archivos, el valor correcto es644. - Aplica los cambios.
[WARNING] No pongas permisos
777en todos los archivos. Aunque a veces "funciona", es un agujero de seguridad enorme. Solo se usan puntualmente y se revierten después.
Después de cambiar los permisos, recarga la tienda. Si el problema era este, debería estar resuelto.
Paso 5: Regenera el archivo .htaccess
El archivo .htaccess es crucial para el funcionamiento de PrestaShop. Si está corrupto o tiene reglas incorrectas, puede provocar un error 500 o una pantalla blanca.
Para regenerarlo, la forma más fácil es:
- En el Administrador de archivos, busca el archivo
.htaccessen la raíz. - No lo borres, pero renómbralo a
.htaccess_old. - Ahora, entra a tu tienda. PrestaShop debería generar un
.htaccessnuevo automáticamente.
Si la tienda carga, el problema era ese. Si no carga, restaura el archivo antiguo (renómbralo de nuevo) porque quizás el problema es otro.
[TIP] También puedes forzar la regeneración desde el Back Office, pero si no puedes acceder, este método es el más rápido.
Paso 6: Revisa la conexión a la base de datos
A veces, el problema no está en los archivos, sino en la conexión a la base de datos. Si tu base de datos fue dañada o las credenciales cambiaron, PrestaShop no puede cargar.
- Ve a cPanel y abre "phpMyAdmin".
- Selecciona tu base de datos de PrestaShop.
- En la pestaña "Exportar", exporta la base de datos como copia de seguridad. Esto es para tener un respaldo antes de tocar nada.
- Vuelve al Administrador de archivos y busca el archivo
app/config/parameters.php. - Ábrelo y verifica que el nombre de la base de datos, el usuario y la contraseña coinciden con los que tienes en cPanel. A veces, al cambiar de hosting o de servidor, estos datos no se actualizan.
Si los datos son correctos y aun así falla, puedes intentar reparar las tablas desde phpMyAdmin. Selecciona todas las tablas de la base de datos, y en el menú desplegable inferior elige "Reparar tabla".
Paso 7: Restaura una copia de seguridad reciente
Si has llegado hasta aquí y nada funciona, es hora de tomar medidas drásticas. Si tienes una copia de seguridad de tu tienda de antes de que empezara el problema, restáurala. La mayoría de los hostings con cPanel tienen la herramienta "Backup" o "Copias de seguridad" integrada.
- Ve a la sección "Archivos" en cPanel.
- Haz clic en "Backup" o "Copias de seguridad".
- Puedes restaurar la copia de seguridad del directorio principal (tu carpeta
public_html) y de la base de datos.
[WARNING] Esta acción sobrescribirá todos los cambios que hayas hecho desde la copia. Asegúrate de que es la copia correcta (la fecha anterior al error).
Restaurar una copia es la solución más segura cuando no puedes encontrar el error, pero ten en cuenta que perderás los pedidos o cambios realizados desde esa fecha. Es el último recurso, pero el más efectivo.
Preguntas frecuentes (FAQ)
¿El error de pantalla blanca afecta también al panel de administración (Back Office)?
Sí, es muy común que si el front-office (tu tienda) está en blanco, el back-office también lo esté. Las soluciones que hemos visto aplican a ambas partes, ya que el problema es de configuración o de servidor.
¿Puedo usar el modo mantenimiento para que los clientes no vean el error?
Si puedes acceder al Back Office, activa el modo mantenimiento para que los clientes vean un mensaje bonito en lugar de la pantalla blanca. Pero si no puedes acceder, no te preocupes, sigue los pasos de este artículo.
¿Qué hago si el error aparece después de una actualización de PrestaShop?
Es muy habitual. Te recomiendo ir directamente al Paso 3 (desactivar módulos) y al Paso 5 (regenerar .htaccess). Las actualizaciones suelen romper módulos y el .htaccess.
¿Necesito contactar con mi proveedor de hosting?
Si después de probar todo esto sigues con el problema, sí. Puede ser un problema del servidor que no puedes ver desde cPanel, como una configuración de PHP específica o un firewall. Cuando contactes con ellos, diles que ya has probado los pasos básicos y adjunta el mensaje de error que viste en el Paso 1.
¿Es normal que tenga que hacer todo esto yo mismo?
Con esta guía, espero que no te sientas solo. La mayoría de los problemas de PrestaShop no carga se resuelven con estos pasos. Si no te ves capaz, siempre puedes contratar a un profesional, pero te animo a intentarlo, porque es más sencillo de lo que parece.
Siguiendo estos pasos de forma metódica, podrás identificar y resolver la causa de la pantalla blanca de tu PrestaShop. Recuerda siempre trabajar con copias de seguridad y cambiar una sola cosa a la vez para saber qué ha funcionado. El orden que te he dado es el que yo uso en mi día a día y funciona en la gran mayoría de los casos. ¡Ánimo, que tu tienda volverá a estar operativa en nada!
