Error 500 en PrestaShop o página en blanco: qué hacer en los primeros 15 minutos
Cuando PrestaShop muestra un error 500 o una página en blanco, mira primero si falla toda la tienda o una sola página. Después activa el modo debug o abre el registro de errores para ver el mensaje real. Causas habituales: un módulo tras actualizarse, un cambio de versión de PHP y el límite de memoria. En una emergencia, desactiva un módulo renombrando su carpeta.
Autor: El equipo de TellMyShop. Una guía para dueños de tiendas PrestaShop: la causa, el arreglo manual y el mismo trabajo en una conversación con el chat.
Última actualización: · 6 min de lectura
Paso cero: ¿qué ha dejado de funcionar exactamente?
Antes de cambiar nada, apunta tres cosas. Deciden si lo arreglarás tú en un cuarto de hora o si necesitas ayuda.
| Pregunta | Si la respuesta es sí | Causa probable |
|---|---|---|
| ¿Están caídos toda la tienda y el panel? | un error al arrancar PrestaShop | PHP, memoria, un archivo dañado, un módulo que se carga en todas partes |
| ¿La tienda está caída pero el panel funciona? | un error en el tema o en un módulo de la tienda | un módulo cambiado hace poco, el tema, un override |
| ¿Está caída una sola página, como el carrito o una página de producto? | un error en un módulo enganchado a esa página | un módulo de pago, de envío o de la página de producto |
| ¿Cambió algo en las últimas 24 horas? | casi siempre es la causa | una actualización de un módulo, de PHP o del tema, una migración |
La última fila es la más importante. Un error 500 que apareció una hora después de actualizar un módulo suele resultar culpa de ese módulo. Empieza por deshacer el último cambio antes de buscar en otro sitio.
Cómo ver el mensaje de error real
El error 500 por sí solo no te dice nada. Hay dos sitios que muestran el mensaje real, con el archivo y el nombre del módulo.
- El modo debug. Cuando el panel funciona, lo activas en Parámetros avanzados > Rendimiento. Cuando el panel está caído, cambias
_PS_MODE_DEV_atrueen el archivoconfig/defines.inc.php. Las dos formas, y cómo desactivarlo con seguridad, las describimos en nuestro artículo sobre el modo debug de PrestaShop. LH.pl también lo muestra paso a paso (en polaco). - El registro de errores del servidor. En el panel del hosting, normalmente como «error log» o «registros PHP». Muestra los errores aunque no quieras activar la depuración en una tienda en marcha.
- El registro de PrestaShop. Parámetros avanzados > Registros guarda los errores que PrestaShop llegó a anotar, con fecha. Es útil cuando el error afecta solo a una parte de la tienda.
Después del diagnóstico, desactiva el modo debug. Muestra detalles técnicos a cualquier visitante.
Las causas más habituales y qué hacer con ellas
Un módulo tras una actualización. El mensaje apunta a un archivo de la carpeta modules/nombre_del_modulo. Desactiva el módulo en el panel y, si el panel está caído, cambia el nombre de su carpeta por FTP. Después avisa del error al autor del módulo con el texto del mensaje.
La versión de PHP. Tu proveedor cambió PHP, o lo cambiaste tú en el panel del hosting. Los módulos antiguos no funcionan con un PHP más nuevo, y PrestaShop 8 y 9 tienen sus propios requisitos. Revisa los requisitos del sistema de PrestaShop y vuelve a la versión anterior de PHP si el error apareció justo después del cambio.
Memoria y disco. Un mensaje sobre «Allowed memory size», o falta de espacio en el disco. Eso es para tu proveedor de hosting: subir el límite de memoria de PHP o liberar espacio.
Overrides y caché. Después de desinstalar un módulo, a veces se queda un archivo de override que hace referencia a código que ya no existe. Ayuda vaciar el contenido de var/cache y revisar la carpeta override.
Archivos dañados o una infección. Cuando no ha cambiado nada y han aparecido trozos de código desconocidos en los archivos, puede ser un ataque. Pskrk describe un caso así (en polaco). En ese caso necesitas una copia de seguridad y un especialista, no arreglos caseros. Zenbox ha reunido una lista más amplia de fallos (en polaco).
Cuándo ayuda el chat y cuándo no
Cuando PrestaShop entero no responde, tu chat (Claude o ChatGPT) no puede ayudar, porque el módulo TellMyShop funciona dentro de la tienda y cae con ella. Entonces te quedan el plan de arriba o un desarrollador.
El chat es útil cuando la tienda funciona pero una parte tiene un error, y para la prevención. En la versión gratuita TellMyShop Free el chat lee el registro de errores de un periodo elegido, la revisión técnica de la tienda y la lista de módulos, y después explica los mensajes con palabras sencillas.
Tú: Desde esta mañana los clientes escriben que el carrito no se abre. Ayer actualicé dos módulos. Mira qué pasa.
Tu chat: El registro de las últimas 24 horas tiene 46 entradas del mismo error, la primera ayer a las 21:14, unos minutos después de actualizar el módulo de envíos.
El error viene de un archivo de ese módulo y se produce al abrir el carrito. El otro módulo actualizado no tiene errores.
El paso más seguro: desactivar el módulo de envíos hasta que el autor publique un arreglo. Los clientes perderán ese método de envío, pero el carrito volverá a funcionar.
Desactivar un módulo a través del chat funciona en TellMyShop Pro con el interruptor Módulos activado en el panel del módulo. El interruptor dura 24 horas y necesita una copia de seguridad de la base de datos hecha el mismo día. Un módulo desactivado conserva sus datos, así que puedes volver a activarlo con una petición. Con los módulos de pago y de envío el chat te avisa de lo que perderán los clientes. Peticiones de ejemplo: mensajes de error tras actualizar un módulo, arreglar una página de error tras una actualización y desactivar un módulo que rompe el carrito.
Cómo reducir el riesgo del próximo error 500
- Haz una copia de seguridad de los archivos y de la base de datos antes de cada actualización de un módulo o de PHP.
- Actualiza un módulo cada vez y revisa la tienda después de cada uno.
- Haz las actualizaciones por la mañana en un día laborable, no el viernes por la noche.
- Revisa el registro de errores una vez por semana, antes de que un error pequeño crezca.
- Ten una copia de pruebas de la tienda para probar los cambios grandes.
Si la tienda funciona pero tus cambios no se ven, es otro problema: cambios que no se ven en PrestaShop.
Preguntas y respuestas
¿Qué significa el error 500 en PrestaShop?
Que el servidor se encontró con un error en el código de la tienda y no pudo construir la página. El mensaje en sí no dice qué ha pasado. Solo el modo debug o el registro de errores del servidor muestran la causa. El culpable habitual es un módulo tras una actualización, un cambio de versión de PHP o que el servidor se quede sin espacio o sin memoria.
¿Cómo desactivo un módulo cuando el panel de PrestaShop no funciona?
Por FTP o con el gestor de archivos del hosting, cambia el nombre de la carpeta del módulo dentro de la carpeta modules, por ejemplo añadiendo _off al final. PrestaShop no encontrará el módulo y se lo saltará. Devuélvele el nombre cuando esté arreglado. Es una salida de emergencia, así que apunta lo que cambiaste para poder deshacerlo después.
¿El error 500 puede ser culpa de mi proveedor de hosting?
Sí. Un límite de memoria de PHP superado, un disco lleno, una extensión de PHP desactivada o un cambio de versión de PHP hecho por el proveedor dan el mismo error 500. Si el registro muestra un mensaje sobre la memoria o sobre una extensión que falta, es cosa de tu proveedor, no del autor del módulo.
¿Puede ayudar el chat cuando toda la tienda está caída?
No, porque el módulo TellMyShop funciona dentro de la tienda. Cuando PrestaShop no responde en absoluto, la conexión con el chat tampoco funciona. El chat ayuda cuando el error afecta a una parte de la tienda, como una página o el carrito, y en la prevención: revisar el registro de errores después de cada actualización.
PrestaShop es una marca registrada de PrestaShop SA. Claude es una marca de Anthropic PBC. ChatGPT y OpenAI son marcas de OpenAI. TellMyShop no está afiliado a estas empresas.