¿Qué es el Error HTTP 500 en PrestaShop y por qué ocurre?
El error HTTP 500 (Internal Server Error) es una respuesta genérica del servidor web que indica que algo ha fallado, pero no especifica exactamente qué. En el ecosistema de PrestaShop, este fallo impide que tanto los clientes como los administradores accedan a la tienda o al panel de control.
Las causas más comunes de este problema incluyen:
- Incompatibilidad de versiones de PHP tras una actualización del servidor.
- Fallos o errores críticos en módulos recientemente instalados o actualizados.
- Problemas de permisos en archivos y directorios del hosting.
- Límites de memoria RAM (memory_limit) insuficientes para procesar las peticiones.
Método 1: Activar el modo debug para identificar la causa exacta
Dado que el error 500 oculta el mensaje real, el primer paso obligatorio es activar el modo de depuración (debug mode) para ver la excepción de PHP en pantalla.
- Accede a los archivos de tu tienda mediante un cliente FTP o el Administrador de Archivos de tu cPanel.
- Navega hasta la ruta
/config/y busca el archivodefines.inc.php. - Edita el archivo y busca la línea que contiene
define('_PS_MODE_DEV_', false);. - Cambia el valor
falseportruepara que quede de la siguiente manera:define('_PS_MODE_DEV_', true);. - Guarda los cambios y recarga tu página web o el backoffice. En lugar del error 500, ahora verás un mensaje detallado con el archivo y la línea exacta donde se produce el fallo.
Método 2: Aumentar el límite de memoria PHP en el servidor
Muchas operaciones de PrestaShop, como la carga de catálogos grandes o la ejecución de ciertos módulos, requieren más recursos de los que tiene asignados por defecto tu cuenta de hosting.
- Accede al panel de control de tu proveedor de hosting (cPanel, Plesk, etc.).
- Busca la herramienta llamada Seleccionar versión de PHP o MultiPHP INI Editor.
- Modifica los siguientes valores recomendados para PrestaShop:
memory_limit = 256Mo superiormax_execution_time = 300post_max_size = 64M
- Guarda los cambios y comprueba si tu tienda vuelve a funcionar con normalidad.
Método 3: Desactivar módulos problemáticos desde la Base de Datos
Si el error 500 se originó tras instalar un módulo o tras activar una opción en el backoffice al que ya no puedes acceder, puedes desactivar el complemento directamente desde phpMyAdmin.
- Entra en phpMyAdmin desde tu panel de hosting y selecciona la base de datos de tu PrestaShop.
- Haz clic en la tabla
ps_module(el prefijops_puede variar según tu instalación). - Busca el módulo que está causando el conflicto utilizando la columna
name. - Edita el registro y cambia el valor de la columna
activede1a0. - Guarda los cambios, borra la caché del navegador y verifica si el sitio web recupera la estabilidad.