🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo solucionar el error 500 en PrestaShop (DirectAdmin)

Actualizado el 17 de febrero de 2026

¡Vaya! Ver un error 500 en tu tienda PrestaShop es como encontrar un muro inesperado. Es frustrante, sobre todo cuando tienes pedidos pendientes. Pero no te preocupes, soy tu técnico de soporte y voy a guiarte paso a paso para solucionar el error 500 en PrestaShop (DirectAdmin). Vamos a desbloquear tu tienda juntos, sin necesidad de ser un experto.

Este error es un "error interno del servidor". Básicamente, tu servidor (el que aloja tu web) está confundido y no sabe qué hacer con una petición. La clave para resolverlo es encontrar la causa exacta, y para eso necesitamos hablar el idioma del servidor: los logs.

¿Qué es exactamente el error 500 en PrestaShop?

Imagina que tu tienda es una máquina expendedora. El error 500 ocurre cuando metes una moneda, pero la máquina se queda atascada y no te da el producto ni te devuelve el dinero. En términos técnicos, significa que el servidor encontró un problema inesperado y no pudo completar la solicitud.

A diferencia de otros errores (como el 404, que dice "página no encontrada"), el 500 es genérico. Por eso es fundamental revisar los logs PrestaShop y los del servidor para obtener pistas concretas.

Paso 1: Lo primero, no te asustes y actúa con calma

El error 500 puede aparecer de repente, incluso después de una actualización, al instalar un módulo o al cambiar de tema. Las causas más comunes son:

  • Un archivo .htaccess corrupto.
  • Problemas de permisos de archivos o carpetas.
  • Módulo o tema incompatible o mal configurado.
  • Límite de memoria de PHP excedido.
  • Error en la configuración de la tienda.

[INFO] No reinicies el servidor a lo loco. Primero, revisa los logs. Es como ir al médico: primero te hacen análisis, no te operan directamente.

Paso 2: Accede a tu panel de control (DirectAdmin)

Para empezar a investigar, debes entrar en DirectAdmin, el panel de control de tu hosting. Es la puerta de entrada a la configuración de tu servidor.

  1. Abre tu navegador y ve a la dirección de tu panel: https://tu-dominio.com:2222 (o la que te haya dado tu proveedor de hosting).
  2. Introduce tu usuario y contraseña de DirectAdmin.

Una vez dentro, verás un montón de iconos. No te abrumes, iremos paso a paso.

Paso 3: Activar y revisar los logs de PrestaShop (¡El tesoro escondido!)

Los logs PrestaShop son como el "cuaderno de bitácora" de tu tienda. Registran cada error, advertencia y evento. Por defecto, en muchos servidores, los logs de errores de PHP están desactivados o no son muy detallados. Vamos a activarlos.

3.1. Activar el modo debug de PrestaShop

Este es el primer paso para solucionar el error 500 PrestaShop DirectAdmin. Te mostrará el error real en la pantalla.

  1. Conéctate a tu hosting por FTP (FileZilla, por ejemplo) o usa el "Administrador de Archivos" de DirectAdmin.
  2. Navega hasta la carpeta raíz de tu tienda PrestaShop (normalmente public_html o tu-dominio.com).
  3. Busca el archivo config/defines.inc.php.
  4. Ábrelo con un editor de texto (como el bloc de notas o el editor del administrador de archivos).
  5. Busca esta línea:
    define('_PS_MODE_DEV_', false);
  6. Cámbiala por:
    define('_PS_MODE_DEV_', true);
  7. Guarda el archivo.

Ahora, recarga tu tienda. En lugar del error 500 genérico, verás un mensaje de error mucho más descriptivo, como:

  • Fatal error: Allowed memory size of 134217728 bytes exhausted... (Problema de memoria)
  • Parse error: syntax error, unexpected... (Error en un archivo PHP)
  • Class 'NombreClase' not found... (Módulo o tema roto)

[WARNING] Una vez solucionado el error, vuelve a poner _PS_MODE_DEV_ a false. Si lo dejas activo en producción, cualquier visitante podría ver información sensible de tu servidor.

3.2. Revisar los logs del servidor en DirectAdmin

Si el modo debug no te da suficiente información, toca buscar en los logs del servidor.

  1. En DirectAdmin, busca el icono que dice "Log Viewer" o "Error Log" (suele estar en la sección "Información avanzada" o similar).
  2. Haz clic en "Apache Error Log" o "Error Log".
  3. Verás un montón de líneas. Busca las que coincidan con la hora exacta en que viste el error 500.
  4. Las líneas suelen tener este formato:
    [Wed Oct 25 10:30:00.123456 2023] [core:error] [pid 12345] [client 192.168.1.1:0] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.
    • Esto suele indicar un bucle infinito en el .htaccess.

También puedes revisar el log de errores de PHP específico de tu cuenta. En DirectAdmin, a veces está en:

  • domains/tu-dominio.com/error.log (dentro del administrador de archivos)
  • O en la ruta ~/domains/tu-dominio.com/logs/

Paso 4: Soluciones prácticas para las causas más comunes

Basándonos en lo que nos dicen los logs, actuamos.

Solución A: Archivo .htaccess corrupto (Muy común)

Es uno de los culpables más frecuentes. El .htaccess es un archivo de configuración del servidor. Si se daña, todo se va al traste.

  1. Conéctate por FTP o al Administrador de Archivos de DirectAdmin.
  2. En la raíz de tu tienda, busca el archivo .htaccess (puede estar oculto, activa "Mostrar archivos ocultos" en tu cliente FTP).
  3. Renómbralo a htaccess_old (no lo borres aún, por si acaso).
  4. Recarga tu tienda. Si el error 500 desaparece, ¡el .htaccess era el problema!
  5. Ahora, regenera uno limpio desde el panel de administración de PrestaShop: Parámetros de la tienda > Tráfico y SEO > SEO y URLs, y haz clic en Guardar (sin cambiar nada). Esto creará un nuevo .htaccess.

Solución B: Permisos de archivos incorrectos

Los archivos y carpetas tienen "permisos" que dicen quién puede leer, escribir o ejecutarlos. Si están mal, el servidor se bloquea.

  • Carpetas: Deben tener permisos 755.
  • Archivos: Deben tener permisos 644.
  1. En DirectAdmin, usa el Administrador de Archivos.
  2. Selecciona toda la carpeta de tu tienda (por ejemplo, public_html).
  3. Haz clic en "Cambiar permisos".
  4. Marca la opción "Recursivo" (para que aplique a todas las subcarpetas y archivos).
  5. Pon 755 para carpetas y 644 para archivos.
  6. Haz clic en Aceptar.

[TIP] No uses permisos 777 (escritura para todos). Es un riesgo de seguridad grave.

Solución C: Límite de memoria de PHP

Tu tienda necesita un mínimo de memoria para funcionar. Si un módulo o proceso pide más de la cuenta, aparece el error.

  1. En DirectAdmin, busca la opción "PHP Selector" o "Configuración de PHP".
  2. Busca el parámetro memory_limit.
  3. Aumenta el valor. Un buen mínimo para PrestaShop es 256M o incluso 512M.
  4. Guarda los cambios.

Si no tienes acceso a PHP Selector, puedes intentar modificar el archivo php.ini (pregunta a tu hosting si puedes) o añadir esta línea al archivo .htaccess (si la solución A no funcionó):

php_value memory_limit 256M

Solución D: Módulo o tema problemático

A veces, un módulo recién instalado o un tema incompatible es el culpable.

  1. Si el error apareció justo después de instalar algo, desactívalo desde el panel de administración. Si no puedes acceder al panel, renombra la carpeta del módulo sospechoso (dentro de modules/) desde FTP. Por ejemplo, de micromodulo a micromodulo_old. Esto lo desactivará a la fuerza.
  2. Si el error es del tema, cambia temporalmente al tema predeterminado de PrestaShop (por ejemplo, "classic"). Puedes hacerlo desde la base de datos (usando phpMyAdmin en DirectAdmin) o renombrando la carpeta del tema en themes/.

Solución E: Error en la configuración de la tienda (Base de datos)

A veces, un valor corrupto en la base de datos causa el error.

  1. Accede a phpMyAdmin desde DirectAdmin.
  2. Selecciona la base de datos de tu tienda.
  3. Busca la tabla ps_configuration (el prefijo ps_ puede variar).
  4. Localiza las filas que puedan estar dañadas (a veces, un valor NULL donde no debe). Si no sabes qué buscar, una reparación general de tablas puede ayudar:
    • Selecciona todas las tablas.
    • En el menú desplegable de abajo, elige "Reparar tabla".

[WARNING] Hacer cambios en la base de datos sin saber lo que haces puede romper tu tienda. Si no estás seguro, contacta con tu soporte técnico.

Paso 5: Después de solucionar el error

¡Enhorabuena! Ya has conseguido solucionar el error 500 PrestaShop DirectAdmin. Ahora, unos pasos finales:

  1. Desactiva el modo debug: Vuelve a poner define('_PS_MODE_DEV_', false); en config/defines.inc.php.
  2. Limpia la caché de PrestaShop: Ve a Parámetros de la tienda > Rendimiento y haz clic en "Forzar compilación" y "Limpiar caché".
  3. Prueba toda la tienda: Asegúrate de que todo funciona: carrito, registro, pago, etc.

FAQ: Preguntas frecuentes sobre el error 500 en PrestaShop

P: ¿Por qué sigo viendo el error 500 después de seguir todos los pasos?
R: Puede ser un problema más profundo del servidor, como un error de configuración de Apache o un problema con la versión de PHP. Contacta con tu proveedor de hosting y diles que has revisado los logs de errores de PrestaShop y del servidor.

P: ¿El error 500 puede afectar mi SEO?
R: Sí, si el error persiste durante mucho tiempo, los motores de búsqueda pueden penalizar tu sitio. Es importante solucionarlo rápidamente.

P: ¿Qué hago si no encuentro el archivo defines.inc.php?
R: Asegúrate de estar en la carpeta correcta (la raíz de tu tienda). Si no existe, puede que tu PrestaShop esté dañado o uses una versión muy antigua.

P: ¿Puedo evitar el error 500 en el futuro?
R: Sí, siguiendo buenas prácticas: haz copias de seguridad frecuentes, actualiza PrestaShop y los módulos con cuidado, y no instales módulos de fuentes no fiables.

P: ¿Qué pasa si el error ocurre solo en una página específica?
R: El problema suele estar en un módulo o en el contenido de esa página (por ejemplo, un producto con una imagen corrupta). Activa el modo debug para identificar el módulo o la línea exacta.

P: ¿Syspanel (HestiaCP) también tiene logs?
R: Sí, si usas Syspanel (recuerda, el acceso es por el puerto 2106), el proceso es muy similar. Busca la sección de "Logs" o "Registros" dentro del panel. Allí encontrarás los logs de Apache y de PHP.

Espero que esta guía te haya sido de gran ayuda. Recuerda que la paciencia y la revisión de los logs PrestaShop son tus mejores aliados. ¡Tu tienda volverá a funcionar!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel