¿Qué es el Error 500 en PrestaShop y por qué ocurre?
El error 500 (Internal Server Error) en PrestaShop indica que el servidor web ha encontrado una condición inesperada que le ha impedido cumplir con la solicitud del cliente. A diferencia de otros fallos, este mensaje es genérico y no especifica por sí mismo qué está fallando exactamente en el núcleo del sistema, en un módulo o en la configuración del servidor.
Las causas más comunes de este problema suelen estar relacionadas con fallos en la versión de PHP, conflictos tras la instalación o actualización de un módulo, problemas de permisos en archivos y carpetas, o errores de sintaxis en archivos críticos como settings.inc.php o defines.inc.php.
Método 1: Activar el Modo de Depuración (Debug Mode) para ver el error real
Para solucionar el error 500, el primer paso indispensable es saber exactamente qué lo está provocando. Al activar el modo de desarrollo, PrestaShop dejará de mostrar la página blanca o genérica de error y revelará la traza exacta de la excepción.
- Accede a tu servidor mediante un cliente FTP (como FileZilla) o el Administrador de Archivos de tu Hosting.
- Navega hasta la carpeta raíz de tu instalación de PrestaShop.
- Entra en el directorio
config/y busca el archivodefines.inc.php. - Abre el archivo con un editor de código y busca la siguiente línea:
define('_PS_MODE_DEV_', false); - Cambia el valor
falseportrue:define('_PS_MODE_DEV_', true); - Guarda los cambios y recarga la página de tu tienda online donde aparecía el error 500 para visualizar el mensaje detallado de PHP o de PrestaShop.
Método 2: Comprobar la versión de PHP y los módulos incompatibles
Muchas veces, actualizar el servidor a una versión más reciente de PHP (o cambiar de alojamiento) provoca incompatibilidades directas con módulos antiguos o con la propia versión de PrestaShop que estás utilizando.
- Verifica en el panel de control de tu hosting (cPanel, Plesk, etc.) qué versión de PHP está ejecutando tu dominio.
- Si recientemente cambiaste de PHP 7.4 a PHP 8.1 o 8.2, es muy probable que algún módulo de pago o personalización arroje un error fatal.
- Utiliza el modo de depuración activado en el Método 1 para identificar el nombre de la carpeta del módulo causante del conflicto dentro del directorio
modules/. - Renombra temporalmente la carpeta del módulo problemático añadiendo
_oldal final para desactivarlo y comprobar si la tienda vuelve a funcionar.
Método 3: Corregir los permisos de archivos y carpetas
Una configuración incorrecta en los permisos de lectura y escritura de los archivos del servidor impedirá que PrestaShop genere la caché o escriba en los registros, derivando en un error interno del servidor.
- Conéctate a tu servidor vía FTP o SSH.
- Asegúrate de que los directorios principales tengan los permisos recomendados por seguridad y funcionalidad (generalmente
755para carpetas y644para archivos). - Presta especial atención a las carpetas
var/cache/,img/,upload/ylog/, las cuales deben tener permisos de escritura. - Limpia manualmente la caché eliminando el contenido de las carpetas
var/cache/prod/yvar/cache/dev/si tienes acceso al servidor.