Solucionar error 500 en PrestaShop: causas y arreglos
¿Por qué aparece el error 500 en PrestaShop?
El error 500 en PrestaShop es uno de los problemas más temidos, pero también de los más comunes. Cuando lo ves, significa que algo falló en el servidor y la tienda no puede cargar. Es un error genérico: no te dice exactamente qué está roto, solo que "algo" no funciona. Pero no te preocupes, porque en este artículo vamos a desglosar todas las causas posibles y, sobre todo, cómo arreglarlas paso a paso.
Antes de empezar, es importante que entiendas que el error 500 puede aparecer por muchas razones: desde un archivo con permisos incorrectos hasta un módulo que genera un conflicto, pasando por problemas de memoria o incluso un archivo .htaccess corrupto. La buena noticia es que la mayoría de las veces tiene solución, y no necesitas ser un experto en programación para lograrlo.
Vamos a ir por partes, con un método claro y ordenado, para que puedas diagnosticar y solucionar el error de PrestaShop sin desesperarte.
Primero: Haz una copia de seguridad (¡sí o sí!)
[WARNING] Antes de tocar cualquier archivo o configuración, haz una copia de seguridad completa de tu tienda (archivos y base de datos). Si algo sale mal, podrás restaurar todo sin perder ventas ni datos de clientes.
Puedes hacerlo desde el panel de control de tu hosting (muchos ofrecen copias automáticas) o manualmente mediante FTP y phpMyAdmin. Si usas Syspanel (el panel de control de tu hosting, accesible por el puerto 2106), busca la opción de "Copias de seguridad" o "Backups". Tómate 10 minutos para hacer esto, te ahorrará dolores de cabeza.
Activa el modo debug de PrestaShop para ver el error real
El error 500 es un "error genérico". Para saber qué está pasando realmente, necesitas que PrestaShop te muestre el mensaje específico. Esto se hace activando el modo debug (depuración).
Paso 1: Accede a los archivos de tu tienda por FTP o desde el administrador de archivos de Syspanel
Necesitas un cliente FTP como FileZilla o el administrador de archivos que viene en Syspanel (panel de control al que accedes por el puerto 2106). Busca la carpeta raíz de tu PrestaShop (normalmente public_html o www).
Paso 2: Edita el archivo config/defines.inc.php
Dentro de esa carpeta, busca la ruta config y abre el archivo defines.inc.php con un editor de texto (el Bloc de notas sirve, pero algo como Sublime Text o Notepad++ es mejor).
Busca esta línea:
define('_PS_MODE_DEV_', false);
Cámbiala por:
define('_PS_MODE_DEV_', true);
Guarda el archivo y súbelo de vuelta (sobrescribe el original). Ahora recarga tu tienda. Verás un mensaje de error mucho más detallado, con la ruta del archivo problemático y la línea exacta. Anota ese mensaje, te será muy útil.
[TIP] Si no encuentras la línea, busca _PS_MODE_DEV_ y cámbialo. Si el archivo no existe (versiones antiguas), busca config/config.inc.php y añade al final: ini_set('display_errors', 'on');
Causa 1: Permisos de archivos y carpetas incorrectos
Una de las causas más comunes del error 500 en PrestaShop son los permisos de archivos mal configurados. Si después de una migración o una actualización los permisos se cambiaron, la tienda no puede leer o escribir ciertos archivos y revienta.
Cómo solucionarlo
- Conecta por FTP a tu hosting.
- Selecciona todos los archivos y carpetas de la raíz de PrestaShop.
- Haz clic derecho y elige "Permisos de archivo" (o "CHMOD").
- Establece los siguientes valores:
- Carpetas (directorios):
755 - Archivos:
644
- Carpetas (directorios):
- Aplica los cambios a todas las subcarpetas y archivos (recursivo).
Si tu cliente FTP no te deja hacerlo de forma masiva, puedes usar el administrador de archivos de Syspanel (puerto 2106), que suele tener una opción para cambiar permisos de forma recursiva.
Causa 2: Archivo .htaccess corrupto o con reglas inválidas
El archivo .htaccess es un archivo de configuración clave en Apache. Si está dañado o tiene reglas incompatibles, el servidor no sabrá cómo procesar las solicitudes y devolverá un error 500.
Cómo solucionarlo: Regenera el .htaccess
- Conecta por FTP y localiza el archivo
.htaccessen la raíz de tu tienda. - Renómbralo a algo como
.htaccess.bak(esto lo "desactiva" sin borrarlo). - Recarga tu tienda. Si el error desaparece, el problema era ese archivo.
- Ahora ve al panel de administración de PrestaShop (si puedes acceder) y ve a Parámetros Avanzados > Rendimiento. Busca el botón "Regenerar el archivo .htaccess" y haz clic.
- Si no puedes acceder al panel, crea un archivo
.htaccessnuevo y vacío. PrestaShop lo regenerará solo cuando accedas al panel.
[INFO] Si tu tienda usa un servidor Nginx, el archivo .htaccess no se usa, pero el problema puede estar en la configuración del servidor. En ese caso, contacta con tu proveedor de hosting.
Causa 3: Problemas con la memoria PHP (límite de memoria)
PrestaShop es una plataforma que consume bastante memoria, especialmente si tienes muchos módulos o catálogos grandes. Si el límite de memoria PHP es muy bajo, el servidor se queda sin recursos y lanza un error 500.
Cómo aumentar el límite de memoria
- Busca el archivo
php.inien tu hosting (o créalo en la raíz si no existe). - Añade o modifica esta línea:
memory_limit = 256M
- Guarda y recarga.
Si no tienes acceso al php.ini, puedes intentar añadir esto al archivo .htaccess de la raíz:
php_value memory_limit 256M
O crear un archivo php.ini en la carpeta config de PrestaShop.
[WARNING] Algunos hostings no permiten cambiar estos valores. Si no funciona, contacta con el soporte de tu hosting y pídeles que aumenten el límite de memoria PHP a 256M o 512M.
Causa 4: Módulos o temas incompatibles o mal configurados
Un módulo recién instalado o actualizado es a menudo el culpable del error 500 en PrestaShop. Lo mismo ocurre con un tema que no es compatible con tu versión.
Cómo identificar al culpable
- Ve a la carpeta
modulesde tu instalación de PrestaShop (por FTP). - Renombra la carpeta del módulo que sospechas (por ejemplo, de
ps_banneraps_banner_old). Esto lo desactiva sin desinstalarlo. - Recarga tu tienda. Si el error desaparece, ya tienes al culpable.
- Si no sabes cuál es, renombra todas las carpetas de módulos (puedes hacerlo con un comando en el servidor si tienes acceso SSH, o manualmente si no son muchos). Luego ve reactivándolos de uno en uno hasta encontrar el que falla.
Para temas
- Ve a la carpeta
themes. - Renombra la carpeta de tu tema activo (por ejemplo,
classicaclassic_old). - PrestaShop debería intentar usar el tema predeterminado. Si el error desaparece, el problema es tu tema.
[TIP] Si el error ocurre justo después de instalar o actualizar algo, ese es casi siempre el motivo. Revisa el historial de cambios recientes.
Causa 5: Archivos de caché corruptos
La caché de PrestaShop a veces se corrompe, lo que provoca errores extraños, incluido el 500. Es una solución muy simple, pero que mucha gente pasa por alto.
Cómo limpiar la caché
- Conecta por FTP y ve a la carpeta
var/cache(en versiones antiguas,cache). - Borra todo el contenido de esa carpeta (los archivos y subcarpetas, pero no la carpeta en sí).
- También puedes hacerlo desde el panel de administración: Parámetros Avanzados > Rendimiento y haz clic en "Vaciar la caché".
[INFO] Si no puedes acceder al panel de administración, borrar la carpeta de caché por FTP suele ser suficiente.
Causa 6: Archivos de PrestaShop incompletos o corruptos
A veces una actualización fallida o una subida de archivos incompleta deja la instalación "a medias". Esto puede provocar que archivos esenciales falten o estén dañados.
Solución: Reemplaza los archivos dañados
- Descarga la misma versión de PrestaShop que tienes instalada (puedes verla en Parámetros Avanzados > Información o en el archivo
config/settings.inc.php). - Descomprime el archivo en tu ordenador.
- Sube solo los archivos de la carpeta
admin,classes,controllersysrcpor FTP, sobrescribiendo los existentes. No subas la carpetaconfigniinstall. - Recarga tu tienda.
[WARNING] No subas la carpeta install nunca, ya que podría permitir que alguien reinstale tu tienda y la deje inservible. Tampoco sobrescribas config/settings.inc.php porque contiene tus datos de conexión a la base de datos.
Causa 7: Problemas con la base de datos
Aunque menos común, un error en la base de datos (tablas corruptas, datos incompatibles) también puede generar un error 500.
Cómo revisar la base de datos
- Entra a phpMyAdmin desde Syspanel (el panel de control, puerto 2106).
- Selecciona tu base de datos de PrestaShop.
- En la parte inferior, verás la opción "Marcar todas" y en el desplegable elige "Reparar tabla". Esto intentará arreglar tablas corruptas.
- También puedes hacer clic en "Comprobar" para ver si hay errores.
Si hay tablas con errores que no se reparan, puede ser necesario restaurar una copia de seguridad de la base de datos.
Causa 8: El archivo settings.inc.php tiene errores
Este archivo contiene las credenciales de conexión a la base de datos. Si está mal configurado (por ejemplo, después de una migración), PrestaShop no puede conectarse y muestra el error.
Revisa la configuración
- Ve a
config/settings.inc.php(en versiones recientes, la información está enapp/config/parameters.php). - Verifica que los datos de conexión (host, usuario, contraseña, nombre de base de datos) sean correctos.
Si no estás seguro, contacta con tu hosting o revisa la documentación de tu servidor.
Causa 9: PHP version incompatible
PrestaShop tiene requisitos de versión de PHP. Si tu hosting actualizó PHP y tu versión de PrestaShop es antigua, es muy probable que aparezca el error 500.
Cómo cambiarlo
- Desde Syspanel (panel de control, puerto 2106), busca la opción "Versión de PHP" o "Selector de PHP".
- Prueba con versiones anteriores (por ejemplo, PHP 7.4 o 8.0, según la versión de tu PrestaShop).
- Guarda y recarga.
[TIP] Si no sabes qué versión de PHP necesitas, consulta la documentación oficial de PrestaShop para tu versión. Las versiones muy antiguas (1.6) no son compatibles con PHP 8.
Causa 10: Problemas con el certificado SSL o configuración de dominio
Si recientemente cambiaste tu dominio o SSL, puede haber conflictos en la configuración de PrestaShop.
Revisa la configuración de la tienda
- Ve a
config/settings.inc.phpy verifica que las URLs estén correctas. - Si usas SSL, asegúrate de que esté bien configurado en el panel de administración (Parámetros Avanzados > Rendimiento > "Activar SSL").
Si nada funciona: Contacta con tu hosting y revisa los logs
Después de probar todos los pasos anteriores, si el error 500 en PrestaShop persiste, es hora de mirar los registros del servidor (logs) o pedir ayuda a tu proveedor de hosting.
Cómo ver los logs
- En Syspanel (puerto 2106), busca la sección "Registros" o "Logs de error".
- También puedes buscar la carpeta
var/logsen tu instalación de PrestaShop y revisar el archivo más reciente.
Los logs te dirán exactamente qué está fallando. Si no entiendes el mensaje, cópialo y envíalo al soporte de tu hosting; ellos podrán ayudarte.
Preguntas frecuentes (FAQ)
¿El error 500 afecta también al panel de administración?
Sí, puede afectar tanto a la tienda como al panel de administración. Si solo falla uno, el problema suele estar en el tema o módulos del front-office.
¿Puedo arreglar el error 500 sin acceso FTP?
Si no tienes acceso FTP, necesitarás usar el administrador de archivos de Syspanel (puerto 2106) o pedir ayuda a tu hosting. Sin acceso a los archivos, muchas soluciones no son posibles.
¿Cuánto tiempo se tarda en arreglar?
Depende de la causa. Las más comunes (caché, permisos, .htaccess) se resuelven en menos de 15 minutos. Las más complejas (módulos incompatibles, base de datos) pueden llevar más tiempo.
¿Debo contratar a un profesional?
Si has probado todo y no lo resuelves, o si no te sientes cómodo tocando archivos, un profesional o el soporte de tu hosting pueden ser la mejor opción. A veces es más barato pagar una hora de soporte que perder ventas por una tienda caída.
Resumen final: Tu plan de acción contra el error 500
- Haz una copia de seguridad.
- Activa el modo debug para ver el error específico.
- Revisa los permisos de archivos (755 carpetas, 644 archivos).
- Regenera el
.htaccess. - Aumenta el límite de memoria PHP.
- Desactiva módulos y temas sospechosos.
- Limpia la caché.
- Reemplaza archivos si sospechas de una actualización fallida.
- Revisa la base de datos.
- Comprueba la versión de PHP.
- Mira los logs y contacta con tu hosting.
El error 500 en PrestaShop es frustrante, pero casi siempre tiene solución. Con calma, método y este artículo como guía, podrás solucionar el error de PrestaShop y tener tu tienda funcionando de nuevo. Y recuerda: la prevención es la mejor cura. Mantén tu PrestaShop actualizado, haz copias de seguridad periódicas y no instales módulos de fuentes no confiables.
¡Mucha suerte con tu tienda! Si te quedas atascado en algún paso, vuelve a leer la sección correspondiente o busca ayuda en la comunidad de PrestaShop.
