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

Solución de error 500 en PrestaShop con DirectAdmin

Actualizado el 16 de enero de 2026

¿Te has encontrado con la temida pantalla en blanco o el mensaje "Error 500 Internal Server Error" en tu tienda PrestaShop alojada en un servidor con DirectAdmin? No te preocupes, es uno de los errores más comunes y, aunque parece grave, casi siempre tiene solución.

En esta guía extensa y paso a paso, vamos a desglosar qué es el error 500 en PrestaShop con DirectAdmin, por qué ocurre y, lo más importante, cómo solucionarlo de forma clara y sin necesidad de ser un experto en programación.

[INFO] El error 500 es un error genérico del servidor. Significa que algo salió mal, pero el servidor no puede dar más detalles por seguridad. Por eso, nosotros mismos tenemos que investigar un poco.


¿Qué causa el error 500 en PrestaShop con DirectAdmin?

Antes de lanzarnos a arreglarlo, es útil entender los culpables más frecuentes. En un entorno DirectAdmin + PrestaShop, las causas suelen ser:

  • Archivos con permisos incorrectos: PrestaShop es muy sensible a los permisos de archivos y carpetas. Un cambio accidental puede bloquear la tienda.
  • Problemas con el archivo .htaccess: Este archivo es el "libro de reglas" del servidor. Si se corrompe o tiene una sintaxis incorrecta, todo falla.
  • Límite de memoria PHP agotado (memory_limit): Si tu tienda tiene muchos módulos o tráfico, puede necesitar más memoria de la que tiene asignada.
  • Módulo o tema defectuoso: Una mala actualización o un plugin incompatible pueden lanzar el error.
  • Versión de PHP incompatible: PrestaShop necesita una versión específica de PHP. Usar una muy antigua o muy nueva puede romperlo.
  • Archivos de caché corruptos: La caché de PrestaShop o de Smarty (el motor de plantillas) a veces se estropea y provoca el error.

Ahora sí, vamos a las soluciones. Te recomiendo seguir el orden, de lo más sencillo a lo más complejo.


Solución 1: Forzar el modo de depuración de PrestaShop (La más rápida)

Esta es la primera parada. PrestaShop tiene un modo "debug" que muestra el error real en lugar de la pantalla en blanco. Necesitas acceder a tus archivos por FTP o por el Administrador de Archivos de DirectAdmin.

Pasos para activar el modo debug:

  1. Accede a tus archivos: Entra a DirectAdmin, busca el Administrador de Archivos y navega hasta la carpeta raíz de tu tienda (normalmente public_html o tienda).
  2. Busca el archivo config/defines.inc.php: Ábrelo con el editor de texto de DirectAdmin.
  3. Modifica la línea clave: Busca esta línea (normalmente cerca del principio):
    define('_PS_MODE_DEV_', false);
    
    Cámbiala a:
    define('_PS_MODE_DEV_', true);
    
  4. Guarda los cambios y recarga tu tienda. Ahora, en lugar del error 500, verás un mensaje de error real como "Fatal error: Allowed memory size of...". Ese es el verdadero problema.

[WARNING] Una vez hayas solucionado el error, vuelve a poner false en el archivo. Dejarlo en true en una tienda en producción muestra información sensible a los visitantes.


Solución 2: Solucionar el error 500 PrestaShop DirectAdmin reiniciando el .htaccess

El archivo .htaccess es muy propenso a dañarse. Vamos a regenerarlo.

Pasos para regenerar el .htaccess:

  1. Renombra el archivo actual: En el Administrador de Archivos, busca el archivo .htaccess en la raíz. Cámbiale el nombre a .htaccess_old (o bórralo, pero mejor renombrarlo por seguridad).
  2. Accede al back office de PrestaShop: Intenta entrar a tudominio.com/adminXXXXX. Si el error era del .htaccess, ahora podrás entrar.
  3. Regenera el .htaccess: Ve a Configuración avanzada > Rendimiento. En la sección "Archivo .htaccess", haz clic en el botón "Generar / Regenerar archivo .htaccess".
  4. Guarda y prueba. La tienda debería volver a funcionar.

Solución 3: Aumentar el límite de memoria PHP desde DirectAdmin

Si el mensaje de debug decía algo como "Allowed memory size exhausted", esta es tu solución. DirectAdmin permite cambiar estos valores fácilmente.

Pasos para aumentar el memory_limit:

  1. Accede a la configuración de PHP: En el panel de DirectAdmin, busca la sección "Configuración de PHP" o "Select PHP Version" (depende de la versión de DirectAdmin).
  2. Edita los parámetros: Busca la opción "Custom php.ini" o "Editor de php.ini".
  3. Modifica el valor memory_limit: Cámbialo a un valor más alto. Por ejemplo, de 128M a 256M o incluso 512M. También puedes subir max_execution_time (tiempo máximo de ejecución) a 120 o 180.
  4. Guarda y reinicia el servicio PHP (si es necesario). En muchos DirectAdmin, los cambios se aplican al instante.

Solución 4: Comprobar los permisos de archivos (DirectAdmin error PrestaShop)

Los permisos incorrectos son una causa clásica. La regla de oro para PrestaShop es:

  • Carpetas: 755
  • Archivos: 644
  • Carpetas de caché y configuración: A veces 777 (pero es un riesgo de seguridad; 755 suele bastar).

Pasos para corregir permisos:

  1. Selecciona toda la carpeta de la tienda: En el Administrador de Archivos, marca la carpeta raíz (ej. public_html).
  2. Haz clic en "Cambiar permisos": Busca el botón en la barra de herramientas.
  3. Aplica los permisos estándar: Selecciona la opción que diga algo como "Aplicar a todos los archivos y subcarpetas" y pon 755 para carpetas y 644 para archivos. Algunos paneles tienen una opción "Reset PrestaShop permissions" que hace esto automáticamente.

Solución 5: Forzar una versión de PHP compatible (Syspanel y DirectAdmin)

A veces, el servidor cambia la versión de PHP global y PrestaShop deja de funcionar. Si tu hosting usa Syspanel (recuerda, el puerto de acceso es el 2106), el proceso es similar a DirectAdmin.

Pasos para cambiar la versión de PHP:

  1. En DirectAdmin: Ve a "Select PHP Version". Ahí podrás elegir la versión de PHP para tu dominio. PrestaShop 1.6 funciona bien con PHP 5.6 o 7.0. PrestaShop 1.7 y 8.x necesitan PHP 7.1 o superior (idealmente 7.4 u 8.0).
  2. En Syspanel (puerto 2106): Busca una opción similar llamada "PHP Selector" o "Versiones de PHP". Selecciona la versión recomendada para tu PrestaShop.
  3. Guarda los cambios. Es posible que el cambio tarde unos segundos en aplicarse.

[TIP] Si no sabes qué versión de PHP necesita tu PrestaShop, consulta la documentación oficial de tu versión. Instalar una versión incorrecta es una causa muy frecuente de error 500.


Solución 6: Forzar la eliminación de la caché de Smarty

La caché de las plantillas (Smarty) puede corromperse. Vamos a borrarla manualmente.

Pasos para borrar la caché manualmente:

  1. Accede a la carpeta var/cache: Dentro de la raíz de tu tienda.
  2. Dentro de var/cache, entra en la carpeta dev o prod (depende de si tienes el modo debug activado o no).
  3. Borra todo el contenido de las subcarpetas cache y purifier. No borres las carpetas en sí, solo su contenido.
  4. También puedes borrar la carpeta cache/smarty si existe.
  5. Vuelve a cargar tu tienda. A menudo, esto resuelve el error inmediatamente.

Solución 7 (Avanzada): Deshabilitar un módulo problemático desde la base de datos

Si el error aparece justo después de instalar o actualizar un módulo, y no puedes acceder al back office, puedes deshabilitarlo desde la base de datos.

Pasos para deshabilitar un módulo vía phpMyAdmin:

  1. Accede a phpMyAdmin: Desde DirectAdmin, busca el icono de phpMyAdmin.
  2. Selecciona tu base de datos: En el panel izquierdo, elige la base de datos de tu PrestaShop.
  3. Busca la tabla ps_module (el prefijo puede variar, ej. prestashop_module).
  4. Busca el módulo problemático: En la columna name, busca el nombre del módulo (ej. ps_mainmenu, blocklayered, etc.).
  5. Edita la fila: Haz clic en "Editar" (el lápiz) y cambia el valor de active de 1 a 0.
  6. Guarda y prueba. El módulo quedará deshabilitado y tu tienda debería cargar.

[WARNING] Ten mucho cuidado al tocar la base de datos. Un cambio incorrecto puede romper la tienda. Si no estás seguro, pide ayuda a tu hosting.


Preguntas Frecuentes (FAQ) sobre el error 500 en PrestaShop

¿Por qué aparece el error 500 solo en algunas páginas?

Suele ser un problema de un módulo o una plantilla específica. Activa el modo debug (Solución 1) para ver el error exacto.

¿El error 500 puede deberse a un ataque?

Sí, aunque es menos común. Un código malicioso puede alterar archivos del core. Si las soluciones anteriores no funcionan, revisa si hay archivos extraños en la raíz o en modules/.

Después de las soluciones, el error sigue. ¿Qué hago?

Pide ayuda a tu proveedor de hosting. El problema puede estar en la configuración del servidor (ej. límites de Apache, problemas con el PHP-FPM). Diles que tienes un DirectAdmin PrestaShop error y que ya has probado las soluciones básicas.

¿Afecta el error 500 al SEO?

Sí, y mucho. Si el error persiste, los motores de búsqueda como Google pueden desindexar tus páginas. Es crucial solucionarlo lo antes posible.

¿Debo restaurar una copia de seguridad?

Si has probado todo y nada funciona, restaurar una copia de seguridad de antes de que apareciera el error es una opción segura. Asegúrate de tener una copia en tu panel de DirectAdmin.


Resumen rápido para solucionar error 500 PrestaShop DirectAdmin

  1. Activa el modo debug para ver el error real.
  2. Regenera el .htaccess desde el back office o manualmente.
  3. Aumenta el memory_limit en la configuración de PHP de DirectAdmin.
  4. Corrige los permisos de archivos y carpetas.
  5. Cambia la versión de PHP a una compatible.
  6. Borra la caché de Smarty manualmente.
  7. Deshabilita módulos problemáticos desde la base de datos.

Con esta guía, deberías poder resolver el 99% de los casos de error 500 PrestaShop DirectAdmin. Recuerda, la paciencia y el orden son clave. ¡Mucho éxito con tu tienda!

¿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