Solución a errores comunes en PrestaShop: página en blanco y 500
¿Te has encontrado alguna vez con la temida página en blanco o el error 500 en tu tienda PrestaShop? No te preocupes, es uno de los sustos más comunes para cualquier administrador de tiendas online. Lo bueno es que, en la mayoría de los casos, estos problemas tienen solución y no implican que hayas perdido datos. Vamos a desglosar paso a paso cómo identificar y solucionar errores PrestaShop, centrándonos en los dos más temidos: el error 500 PrestaShop y la página en blanco.
Antes de empezar, recuerda que si tu hosting utiliza Syspanel (antes conocido como HestiaCP), puedes acceder a la gestión de archivos y logs a través del puerto 2106 (ejemplo: tudominio.com:2106). Ahí podrás revisar los registros de error que te darán pistas clave.
¿Qué significan estos errores?
Tanto la página en blanco PrestaShop como el error 500 son respuestas genéricas del servidor que indican que algo ha fallado, pero no te dicen exactamente qué. Es como si tu coche se parara y el testigo del motor se encendiera, pero sin más detalles. La buena noticia es que, con un poco de paciencia y siguiendo un orden lógico, podemos encontrar la causa.
El error 500 es un error interno del servidor. Puede deberse a un plugin conflictivo, un archivo corrupto, un límite de memoria excedido o incluso un problema de permisos.
La página en blanco (o "White Screen of Death") suele estar relacionada con un error de PHP que se ha silenciado, o con un problema de memoria. El navegador simplemente muestra una pantalla vacía.
Primeros pasos: Activar el modo debug de PrestaShop
Antes de tocar nada, lo más inteligente es activar el modo de depuración de PrestaShop para que, en lugar de mostrarte una pantalla en blanco, te muestre el error real. Es como pasar de una caja cerrada a un cristal transparente.
¿Cómo activar el modo debug?
- Accede a tu servidor vía FTP o al administrador de archivos de tu hosting (por ejemplo, desde Syspanel en el puerto 2106).
- Localiza el archivo
config/defines.inc.phpen la raíz de tu instalación de PrestaShop. - Ábrelo con un editor de texto (como el bloc de notas o un editor FTP).
- Busca la línea que dice:
define('_PS_MODE_DEV_', false); - Cámbiala por:
define('_PS_MODE_DEV_', true); - Guarda el archivo y vuelve a cargar tu tienda.
Ahora, en lugar de la página en blanco o el error 500, verás un mensaje de error detallado con la causa exacta (por ejemplo, "Fatal error: Allowed memory size exhausted..." o un error de sintaxis en un archivo). Anota ese mensaje, es tu pista principal.
[TIP] Si no encuentras el archivo
defines.inc.php, es posible que esté en la carpetaapp/config/en versiones modernas de PrestaShop (1.7+). Buscaparameters.phpodefines_custom.inc.php.
Soluciones comunes para el error 500 PrestaShop y página en blanco
Una vez que tienes el mensaje de error (o si no aparece nada, pero sigues con la pantalla en blanco), prueba estas soluciones en orden.
1. Aumentar el límite de memoria de PHP
Este es el culpable número uno. PrestaShop, sobre todo con muchos módulos o productos, puede consumir mucha memoria.
¿Cómo hacerlo?
- Opción A (Desde el archivo .htaccess): En la raíz de tu PrestaShop, busca el archivo
.htaccess. Añade esta línea al final:php_value memory_limit 256M php_value max_execution_time 300 - Opción B (Desde Syspanel): Accede a tu panel de control en
tudominio.com:2106, busca "Configuración PHP" o "PHP Selector" y cambia el valor dememory_limita 256M o 512M. - Opción C (Pide ayuda a tu hosting): Si no puedes editarlo, contacta con tu proveedor y pídeles que aumenten el límite.
2. Desactivar módulos recién instalados o conflictivos
Un módulo mal codificado o incompatible puede romper toda la tienda.
Pasos para desactivar módulos sin acceso al panel de administración:
- Accede a tu base de datos (normalmente desde Syspanel en
tudominio.com:2106> phpMyAdmin). - Busca la tabla
ps_modules(el prefijops_puede variar). - Localiza el módulo que crees que está causando el problema (por ejemplo, si instalaste un módulo de pago justo antes del error).
- Edita la fila y cambia el valor de la columna
activede1a0. - Guarda los cambios y recarga tu tienda.
[WARNING] Si no sabes qué módulo es, puedes desactivarlos todos temporalmente. Cambia el valor de
activea0para todos los módulos. Luego, ve activándolos uno por uno desde el back office (si logras acceder) para identificar al culpable.
3. Verificar permisos de archivos y carpetas
Los permisos incorrectos pueden impedir que PrestaShop lea o escriba archivos, causando un error 500.
Los permisos correctos suelen ser:
- Carpetas (directorios): 755
- Archivos: 644
¿Cómo cambiarlos?
- Desde tu cliente FTP: selecciona toda la carpeta de PrestaShop, haz clic derecho y elige "Permisos" o "CHMOD". Marca las casillas correspondientes.
- Desde Syspanel: usa el administrador de archivos, selecciona los archivos y cambia los permisos de forma masiva.
Atención a estos archivos y carpetas críticos:
/config//cache//log//img//modules//themes//upload//download/- El archivo
/config/settings.inc.php(debe ser 644 o 444 para seguridad).
4. Borrar la caché de PrestaShop
A veces, una caché corrupta es la causa de la página en blanco.
Método manual:
- Conéctate vía FTP.
- Elimina todo el contenido de la carpeta
/cache/smarty/cache/(no la carpeta en sí, solo lo que hay dentro). - Elimina todo el contenido de la carpeta
/cache/smarty/compile/. - Busca y elimina el archivo
/cache/class_index.php(si existe). - Recarga la tienda.
5. Revisar el archivo .htaccess
Un .htaccess corrupto o mal generado puede provocar un error 500. PrestaShop regenera este archivo automáticamente, pero a veces se daña.
Solución:
- Renombra el archivo
.htaccessa.htaccess_old(esto lo desactivará). - Recarga tu tienda. Si funciona, el problema estaba ahí.
- Ve al back office de PrestaShop (si puedes acceder) a Configuración > Parámetros generales y haz clic en "Guardar" (esto regenera el
.htaccess). - Si no puedes acceder al back office, crea un archivo
.htaccessnuevo y vacío, o copia uno de una instalación limpia de PrestaShop (asegurándote de cambiar el nombre del directorio si es necesario).
[INFO] Si tu tienda usa redirecciones personalizadas en el
.htaccess, haz una copia de seguridad antes de eliminarlo.
6. Revisar los logs del servidor
Si nada de lo anterior funciona, los logs del servidor son tu última esperanza. Te dirán exactamente qué archivo y en qué línea falla.
¿Dónde encontrarlos?
- Desde Syspanel: En
tudominio.com:2106, busca la sección "Logs" o "Registros". Normalmente hay un log de errores de PHP y un log de acceso. - Por FTP: Busca en la carpeta
/log/de tu PrestaShop archivos comofatal.logoerror.log. - Pide ayuda a tu hosting: Ellos pueden acceder a los logs del servidor a nivel de sistema.
Busca líneas que contengan "PHP Fatal error" o "500 Internal Server Error". La línea te dirá el archivo y la línea exacta del problema.
Preguntas frecuentes (FAQ)
P: ¿Puedo perder datos si borro la caché?
R: No. La caché solo almacena archivos temporales (plantillas compiladas, imágenes redimensionadas, etc.). Borrarla no elimina productos, clientes ni pedidos.
P: ¿Qué hago si el error persiste después de probar todo?
R: Contacta con tu proveedor de hosting. A veces el problema está en la configuración del servidor (por ejemplo, una versión de PHP incompatible o un módulo de servidor desactivado). Diles que has seguido los pasos básicos y que necesitas revisar los logs del servidor.
P: ¿El error 500 puede deberse a una actualización de PrestaShop?
R: Sí, es muy común. Si actualizaste recientemente y apareció el error, revisa los módulos y el tema. A veces no son compatibles con la nueva versión. Desactiva todos los módulos no oficiales y cambia temporalmente al tema por defecto (classic o default).
P: ¿Debo activar el modo debug siempre?
R: No. Una vez que hayas solucionado el error, vuelve a cambiar _PS_MODE_DEV_ a false en el archivo defines.inc.php. Dejarlo activo en una tienda en producción puede mostrar información sensible a los usuarios.
Resumen final
Para solucionar errores PrestaShop como la página en blanco PrestaShop o el error 500 PrestaShop, recuerda este orden de batalla:
- Activar modo debug para ver el error real.
- Aumentar memoria PHP (solución más común).
- Desactivar módulos conflictivos desde la base de datos.
- Verificar permisos de archivos y carpetas.
- Borrar la caché de Smarty.
- Revisar el .htaccess y regenerarlo.
- Consultar los logs del servidor (desde Syspanel en el puerto 2106 o pidiendo ayuda al hosting).
La paciencia y el orden son tus mejores aliados. No te asustes, la mayoría de estos problemas se resuelven en minutos. ¡Tu tienda volverá a estar online!
