Cómo activar el modo depuración (debug) en PrestaShop para errores
¿Por qué necesitas activar el modo debug en PrestaShop?
Cuando tu tienda online muestra una pantalla en blanco, un error 500 o un mensaje críptico que no te dice nada, el modo debug PrestaShop se convierte en tu mejor aliado. Este modo es una funcionalidad interna que muestra los errores reales que está experimentando tu tienda, en lugar de ocultarlos detrás de mensajes genéricos.
Piensa en ello como abrir el capó de un coche para ver qué está fallando en el motor. Sin el modo debug, solo ves el humo; con él, ves la pieza exacta que necesita ser reparada.
En este artículo te explicaré paso a paso, y sin tecnicismos innecesarios, cómo activar la depuración en PrestaShop, qué opciones tienes según tu versión, y qué debes hacer después de encontrar el error. También te daré consejos de seguridad para que no dejes tu tienda expuesta.
¿Qué es exactamente el modo debug en PrestaShop?
El modo debug (o modo de depuración) es una configuración interna que cambia la forma en que PrestaShop maneja los errores. Cuando está desactivado, la tienda muestra un error genérico como "500 Internal Server Error" o simplemente una página en blanco. Cuando está activado, verás el mensaje de error detallado, la línea del código donde ocurre el problema y, en muchos casos, la pila de llamadas completa.
Esta información es oro puro para:
- Identificar errores de PHP (el lenguaje en el que está escrito PrestaShop).
- Detectar incompatibilidades entre módulos y el núcleo.
- Localizar problemas con tu tema o plantilla.
- Ver advertencias que no son errores fatales pero que pueden causar problemas a largo plazo.
Importante: El modo debug no es para producción. Solo debes activarlo temporalmente para diagnosticar un problema y luego desactivarlo.
Método 1: Activar el modo debug desde el archivo config/defines.inc.php
Este es el método más directo y funciona en todas las versiones de PrestaShop. Necesitarás acceso al administrador de archivos de tu hosting o a un cliente FTP.
Paso 1: Accede a los archivos de tu tienda
Si usas Syspanel (el panel de control de tu hosting, accesible en el puerto 2106), puedes entrar al administrador de archivos desde el panel. También puedes usar un cliente FTP como FileZilla.
Paso 2: Localiza el archivo defines.inc.php
La ruta exacta es:
/tu_directorio_prestashop/config/defines.inc.php
Normalmente, tu tienda está en una carpeta como public_html, www o prestashop. Si no estás seguro, busca el archivo config dentro de la raíz de tu instalación.
Paso 3: Abre el archivo con un editor de texto
Nunca uses el Bloc de notas de Windows para editar archivos PHP, ya que puede añadir caracteres invisibles. Usa un editor como Notepad++, Sublime Text o el editor integrado de Syspanel.
Paso 4: Busca la línea de definición del modo debug
Dentro del archivo, busca esta línea (normalmente está cerca de la línea 40):
define('_PS_MODE_DEV_', false);
Paso 5: Cambia el valor a true
Modifica la línea para que quede así:
define('_PS_MODE_DEV_', true);
Paso 6: Guarda los cambios y sube el archivo
Guarda el archivo y, si usas FTP, súbelo de vuelta al servidor reemplazando el original. Si usas el administrador de archivos de Syspanel, simplemente guarda los cambios.
Paso 7: Comprueba los resultados
Recarga tu tienda y verás los errores detallados en pantalla. Si no aparece ningún error, prueba a visitar la página que te estaba fallando.
Método 2: Activar el modo debug desde el archivo .htaccess (solamente para errores 500)
Si tu error es tan grave que ni siquiera puedes cargar la tienda (por ejemplo, un error 500 que impide acceder al panel de administración), puedes usar este método alternativo.
Paso 1: Localiza el archivo .htaccess
Este archivo está en la raíz de tu instalación de PrestaShop. Ten en cuenta que es un archivo oculto, así que necesitarás configurar tu cliente FTP o el administrador de archivos para ver archivos ocultos.
Paso 2: Añade estas líneas al final
Copia y pega estas líneas al final del archivo:
php_flag display_errors on
php_value error_reporting E_ALL
Esto fuerza a PHP a mostrar todos los errores, incluso si PrestaShop intenta ocultarlos.
Paso 3: Guarda y prueba
Guarda el archivo y recarga tu tienda. Ahora deberías ver el error específico en lugar de la página 500 genérica.
[WARNING] No olvides eliminar estas líneas después de solucionar el problema. Dejar los errores activados en producción es un riesgo de seguridad grave.
Método 3: Activar el modo debug desde el panel de administración (PrestaShop 1.7+)
Si tu versión de PrestaShop es 1.7 o superior, existe un método más visual y sencillo desde el panel de administración.
Paso 1: Accede al panel de administración
Inicia sesión en tu back office de PrestaShop como administrador.
Paso 2: Ve a Parámetros avanzados
En el menú lateral izquierdo, busca la sección Parámetros avanzados y haz clic en ella.
Paso 3: Entra en Rendimiento
Dentro de Parámetros avanzados, encontrarás la opción Rendimiento. Haz clic en ella.
Paso 4: Busca el apartado "Modo de depuración"
Verás una sección llamada Modo de depuración con dos opciones:
- Desactivado: La opción por defecto.
- Activado: Muestra los errores detallados.
Selecciona "Activado" y guarda los cambios.
Paso 5: Una opción adicional: Modo de depuración con registro
También verás la opción Modo de depuración con registro. Esta opción activa el modo debug y además guarda los errores en un archivo de log. Es muy útil si no puedes ver los errores en pantalla.
¿Qué errores puedes ver con el modo debug activado?
Una vez activado el modo debug, verás información como:
- El tipo de error: Aviso, advertencia, error fatal, etc.
- El mensaje: Una descripción técnica del problema.
- El archivo: La ruta exacta del archivo PHP que está causando el error.
- La línea: El número de línea donde ocurre el error.
- La pila de llamadas: La secuencia de funciones que se ejecutaron antes del error.
Esta información te permite:
- Buscar soluciones específicas en Google o foros con el mensaje exacto.
- Saber qué módulo está causando el problema si el error proviene de un archivo dentro de la carpeta
modules. - Comunicarte eficazmente con soporte técnico, ya que podrás proporcionar el error exacto en lugar de decir "la tienda no funciona".
¿Qué hacer después de encontrar el error?
Una vez que has identificado el error, tienes varias opciones:
1. Desactivar el modo debug inmediatamente
Lo primero es lo primero: después de anotar el error, desactiva el modo debug. No lo dejes activo más tiempo del necesario.
2. Busca soluciones específicas
Con el mensaje de error exacto, busca en Google o en foros especializados. Es muy probable que alguien más haya tenido el mismo problema y haya compartido la solución.
3. Contacta con soporte
Si no encuentras la solución, contacta con tu soporte de hosting o con un desarrollador especializado. Proporciona el mensaje de error exacto, el archivo y la línea. Esto acelerará enormemente el proceso de diagnóstico.
4. Soluciones comunes
Los errores más frecuentes suelen estar relacionados con:
- Incompatibilidad de módulos: Desactiva los módulos recién instalados para ver si el error desaparece.
- Problemas de memoria: Aumenta el límite de memoria en el archivo
config/settings.inc.phpo en.htaccess. - Errores de tema: Revisa si el problema es específico de tu plantilla.
- Incompatibilidad de PHP: Comprueba que tu versión de PHP es compatible con tu versión de PrestaShop.
Consejos de seguridad importantes
[WARNING] Dejar el modo debug activado en una tienda en producción es un riesgo de seguridad grave. Los errores detallados pueden revelar:
- Rutas internas de tu servidor.
- Nombres de archivos y estructura de carpetas.
- Información sobre la base de datos.
- Versiones exactas de software.
Esta información puede ser utilizada por atacantes para buscar vulnerabilidades específicas.
Buenas prácticas:
- Activa el modo debug solo cuando lo necesites.
- Anota el error y desactívalo inmediatamente después.
- Si necesitas mantener el modo debug activo por un tiempo, considera usar la opción "con registro" para que los errores se guarden en un archivo y no se muestren públicamente.
- Realiza estos cambios fuera de las horas punta para minimizar el impacto en tus clientes.
Preguntas frecuentes (FAQ)
¿Puedo activar el modo debug sin acceso FTP?
Sí, si tienes acceso al panel de administración de PrestaShop 1.7+, puedes hacerlo desde Parámetros avanzados > Rendimiento. Para versiones anteriores, necesitarás acceso a los archivos.
¿Qué hago si después de activar el modo debug sigo viendo una página en blanco?
Esto puede ocurrir si el error es tan grave que impide que PrestaShop cargue completamente. Prueba con el método del .htaccess para forzar la visualización de errores.
¿El modo debug afecta al rendimiento de mi tienda?
Sí, activar el modo debug ralentiza ligeramente tu tienda. Por eso es importante desactivarlo después de solucionar el problema.
¿Puedo activar el modo debug desde Syspanel?
Sí, desde Syspanel (el panel de control de tu hosting, accesible en el puerto 2106) puedes acceder al administrador de archivos y editar directamente el archivo config/defines.inc.php. También puedes usar el terminal, si está disponible, para editar el archivo con comandos.
¿Qué significa "PS_MODE_DEV"?
Es la constante que define el modo de desarrollo en PrestaShop. Cuando está en true, activa la depuración.
¿Necesito conocimientos técnicos para activar el modo debug?
No necesitas ser un experto, pero sí necesitas cierta familiaridad con la gestión de archivos. Si no te sientes cómodo, contacta con tu soporte de hosting.
¿Qué pasa si no encuentro el archivo defines.inc.php?
Asegúrate de estar buscando en el directorio correcto. La ruta completa normalmente es [raíz_prestashop]/config/defines.inc.php. Si usas un hosting con Syspanel, verifica que tienes permisos de lectura y escritura en el archivo.
Conclusión
Activar el modo debug PrestaShop es una habilidad esencial para cualquier administrador de tienda online. No solo te ayuda a resolver problemas rápidamente, sino que también te permite comunicarte mejor con soporte técnico y desarrolladores.
Recuerda siempre:
- Activa el modo debug solo cuando lo necesites.
- Anota el error exacto que aparece.
- Desactiva el modo debug inmediatamente después de solucionar el problema.
Con esta guía, ya tienes las herramientas para diagnosticar y resolver los errores PrestaShop debug que puedan surgir en tu tienda. La próxima vez que veas una pantalla blanca o un error 500, ya sabrás exactamente qué hacer.
[TIP] Guarda este artículo en favoritos. Te será útil cada vez que enfrentes un problema técnico con tu tienda PrestaShop.
