Introducción al Error de Excepciones en Magento 2
Cuando administras una tienda de comercio electrónico en Magento 2, es común encontrarse con la temida página que muestra el mensaje: 'One or more exceptions have occurred while processing your application' junto a un número de informe. Por defecto, Magento oculta los detalles técnicos del error por razones de seguridad, lo que dificulta enormemente la depuración y solución del problema.
Causas Principales del Problema
Este comportamiento ocurre principalmente por:
- Un error crítico en un módulo recientemente instalado o actualizado.
- Problemas de permisos en las carpetas var/ y generated/.
- Fallo en la compilación de clases o dependencias de inyección de dependencias.
- Conexión fallida temporalmente con la base de datos o servicios como Redis/Varnish.
Método 1: Habilitar la Impresión de Excepciones (Error Report)
Para ver el mensaje de error real en lugar de la pantalla genérica, debes renombrar el archivo de configuración predeterminado mediante la línea de comandos SSH:
- Accede a tu servidor vía SSH con tu usuario de terminal.
- Navega hasta la raíz de tu instalación de Magento 2:
cd /var/www/html/tu-tienda-magento - Cambia al directorio de configuración:
cd pub/ - Renombra el archivo de respaldo para activar la visualización de errores:
mv errors/local.xml.sample errors/local.xml - Actualiza tu navegador y recarga la página con el error para ver el rastro de la pila (stack trace) detallado.
Método 2: Limpiar la Caché y Recompilar Magento
Una vez que hayas identificado el error gracias al método anterior y hayas corregido el código fuente o módulo defectuoso, debes limpiar la caché y recompilar la aplicación ejecutando los siguientes comandos en orden:
- Limpia la caché de Magento:
bin/magento cache:clean - Elimina el contenido de las carpetas de generación:
rm -rf generated/code/* generated/metadata/* - Ejecuta la compilación de inyección de dependencias:
bin/magento setup:di:compile - Actualiza la base de datos si algún módulo lo requiere:
bin/magento setup:upgrade - Vuelve a habilitar el modo producción si estás en entorno en vivo:
bin/magento deploy:mode:set production