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

Solución a 'Error 500 Internal Server Error' en PrestaShop con DirectAdmin

Actualizado el 21 de junio de 2026

¡Hola! Si estás leyendo esto, probablemente te has encontrado con la temida pantalla blanca o el mensaje "Error 500 Internal Server Error" en tu tienda PrestaShop alojada en un servidor con panel de control DirectAdmin. No te preocupes, es uno de los errores más comunes, y en el 90% de los casos tiene una solución sencilla que puedes aplicar tú mismo sin necesidad de ser un experto en programación.

En esta guía completa, vamos a desglosar paso a paso qué significa este error, por qué ocurre específicamente en PrestaShop con DirectAdmin y, lo más importante, cómo solucionarlo de forma definitiva. Vamos a ello.

¿Qué significa exactamente un "Error 500 Internal Server Error"?

Antes de entrar en materia, es crucial entender qué te está diciendo tu servidor. Un error 500 es una respuesta genérica del servidor que indica: "Algo ha ido mal en mi interior, pero no te voy a dar detalles específicos por seguridad".

Es un error del lado del servidor, lo que significa que no es un problema de tu conexión a Internet ni del navegador del cliente. El problema está en la configuración de tu alojamiento web, en los archivos de PrestaShop o en algún script que se está ejecutando.

En el contexto de PrestaShop y DirectAdmin, este error suele aparecer de repente, a menudo después de:

  • Instalar o actualizar un módulo o plugin.
  • Cambiar la versión de PHP.
  • Mover la tienda a un nuevo servidor o dominio.
  • Subir archivos corruptos o incompletos vía FTP.
  • Agotar el límite de memoria del servidor.

Paso 1: El Primer Diagnóstico (y el más rápido)

No te lances a borrar archivos todavía. Lo primero es identificar el origen exacto del problema. Para ello, necesitamos que el servidor nos muestre el error real, no el genérico.

### Activar el modo de depuración de PrestaShop

PrestaShop tiene un modo de desarrollo que, al activarlo, muestra el error específico en pantalla (por ejemplo, un archivo PHP concreto que falla). Como no podemos acceder al panel de administración (porque también dará error 500), tendremos que hacerlo manualmente.

  1. Accede a tu panel de DirectAdmin.
  2. Ve al Administrador de Archivos (File Manager).
  3. Navega hasta la carpeta raíz de tu tienda PrestaShop (normalmente public_html o domains/tudominio.com/public_html).
  4. Busca el archivo llamado config/defines.inc.php. Ábrelo con el editor de texto del panel.
  5. Busca la línea que dice: define('_PS_MODE_DEV_', false);
  6. Cámbiala por: define('_PS_MODE_DEV_', true);
  7. Guarda los cambios y recarga tu tienda.

[WARNING]: Haz esto solo para diagnosticar. Cuando termines, vuelve a poner false para evitar que los clientes vean mensajes de error feos y vulnerabilidades de seguridad.

Ahora, en lugar de la pantalla blanca, verás un mensaje en inglés similar a: "Fatal error: Uncaught Error: Call to undefined function..." o algo parecido. Anota ese mensaje, es oro puro.

Si no ves el error y sigue el 500, el problema no es de PHP, sino del servidor web (Apache o LiteSpeed). Lo veremos en el siguiente paso.


Paso 2: Solucionar el "Error 500 PrestaShop DirectAdmin" por permisos de archivos

La causa más común de un error 500 prestashop directadmin es una mala configuración de los permisos de archivos y carpetas. Si al subir archivos por FTP o al hacer una copia de seguridad se cambiaron los permisos, el servidor no puede leer o escribir correctamente.

La configuración correcta para PrestaShop es:

  • Carpetas (Directorios): Permisos 755.
  • Archivos: Permisos 644.
  • Carpeta config/ y cache/: Permisos 755 (a veces 775 si tienes problemas de escritura).

### Cómo corregir permisos en masa desde DirectAdmin

  1. En el Administrador de Archivos de DirectAdmin, navega a la raíz de tu PrestaShop.
  2. Selecciona todos los archivos y carpetas (Ctrl + A o el botón de seleccionar todo).
  3. En la barra superior, verás un botón que dice "Cambiar permisos" o "Chmod".
  4. Marca la casilla de "Aplicar a todos los archivos y subcarpetas" (Recursive).
  5. Establece los permisos en 755 para carpetas y 644 para archivos. Algunos paneles permiten aplicar la configuración estándar con un solo clic. Si no, tendrás que hacerlo dos veces: una para archivos y otra para carpetas.

[TIP]: En DirectAdmin, suele haber un botón que dice "Set to 755 / 644" que hace exactamente esto. Úsalo para ahorrar tiempo.

Después de cambiar los permisos, recarga la tienda. Si el error persiste, sigue leyendo.


Paso 3: El Archivo .htaccess (El Gran Culpable)

El archivo .htaccess es un archivo de configuración oculto que controla las reglas de reescritura de URLs, redirecciones y parámetros del servidor. Si está corrupto o tiene una directiva incompatible, provocará un prestashop 500 internal server error de inmediato.

### Regenerar el .htaccess desde cero

  1. En el Administrador de Archivos, asegúrate de tener activada la opción de "Mostrar archivos ocultos" (normalmente un botón en la esquina superior derecha).
  2. Busca el archivo .htaccess en la raíz de tu PrestaShop.
  3. No lo borres aún. Primero, descárgalo a tu PC como copia de seguridad.
  4. Ahora, elimina el archivo .htaccess del servidor.
  5. Recarga tu tienda. Si el error 500 desaparece, el problema era ese archivo.
  6. Para regenerarlo, entra a tu panel de administración de PrestaShop (si ya puedes acceder). Ve a Parámetros Avanzados > Rendimiento y haz clic en "Regenerar el archivo .htaccess".
  7. Si no puedes entrar al panel, crea un archivo .htaccess vacío en la raíz y luego intenta acceder. A veces PrestaShop lo regenera solo.

[INFO]: Si tu servidor usa LiteSpeed, el archivo puede llamarse .htaccess igualmente. La solución es la misma.


Paso 4: Ajustar la versión de PHP en DirectAdmin

PrestaShop es exigente con las versiones de PHP. Si tu hosting actualizó PHP automáticamente o si tienes una versión muy antigua de PrestaShop con una versión nueva de PHP, tendrás un directadmin prestashop error asegurado.

  • PrestaShop 1.6 funciona mejor con PHP 5.6 o 7.0.
  • PrestaShop 1.7 necesita PHP 7.1 o superior (idealmente 7.4).
  • PrestaShop 8.x requiere PHP 7.3 o superior (recomendado 8.1).

### Cómo cambiar la versión de PHP

  1. En tu panel de DirectAdmin, busca la sección "Administrador de PHP" o "PHP Version Selector".
  2. Selecciona tu dominio.
  3. Elige la versión de PHP recomendada según tu versión de PrestaShop.
  4. Guarda los cambios.

[WARNING]: Cambiar la versión de PHP puede afectar a otros scripts. Hazlo con cuidado y verifica que los módulos de tu tienda sean compatibles con la nueva versión. Si el error 500 empezó después de una actualización de PHP, esta es casi seguro la solución.


Paso 5: Aumentar el Límite de Memoria PHP

Otro motivo muy común es que el script de PrestaShop se quede sin memoria. Esto es frecuente en tiendas con muchos productos o módulos pesados.

### Modificar el memory_limit

  1. En DirectAdmin, ve a "Configuración de PHP" (a veces llamado "Custom PHP Settings").
  2. Busca la directiva memory_limit.
  3. Cámbiala a 256M o incluso 512M.
  4. Guarda y reinicia PHP/Apache si es necesario.

Si no tienes acceso a esa opción, puedes intentar añadir una línea al archivo config/defines.inc.php que vimos antes. Justo debajo de la línea de _PS_MODE_DEV_, añade:

ini_set('memory_limit', '512M');

Guarda y prueba. Este es un parche rápido, pero si funciona, sabrás que el problema es la falta de memoria.


Paso 6: Verificar el Espacio en Disco y la Base de Datos

A veces el error 500 no es de código, sino de recursos del servidor.

  1. Espacio en disco: En DirectAdmin, mira el medidor de espacio. Si está al 100%, el servidor no puede escribir archivos temporales y da error 500. Borra cachés, logs o archivos temporales antiguos.
  2. Base de Datos: Si tu base de datos MySQL está corrupta o es demasiado grande, también puede dar este error.
    • Ve a MySQL Management en DirectAdmin.
    • Entra a phpMyAdmin.
    • Selecciona tu base de datos de PrestaShop.
    • En la pestaña "Operaciones", busca la opción "Optimizar tablas" o "Reparar tablas". Esto no borra datos, solo reconstruye índices.

Paso 7: La Solución Definitiva (Borrar la Caché)

PrestaShop guarda una caché de archivos compilados (templates y clases) en las carpetas var/cache (en PS 1.7 y 1.8) o cache (en PS 1.6). Si estos archivos se corrompen (por ejemplo, por una copia de seguridad incompleta), el servidor falla.

### Limpiar la caché manualmente

  1. En el Administrador de Archivos, navega a la carpeta var/cache (o cache).
  2. Dentro, verás carpetas con nombres como dev, prod o class_index.php.
  3. Elimina todo el contenido de estas carpetas, pero no borres las carpetas en sí mismas.
  4. Si no te deja borrar, cambia los permisos de la carpeta a 755 primero y luego intenta borrar.

[TIP]: Esta es la solución que aplican el 80% de los técnicos de soporte. Si el error 500 apareció de repente sin tocar nada, borrar la caché de var/cache es tu mejor apuesta.


Paso 8: Revisar los Logs del Servidor (Para Casos Extremos)

Si has llegado hasta aquí y nada funciona, es hora de mirar los registros de errores. No es tan difícil como parece.

  1. En DirectAdmin, ve a "Logs de Errores" o "Error Logs".
  2. Busca el log de tu dominio (normalmente llamado error.log o tudominio.com.error.log).
  3. Descarga el archivo o ábrelo en el visor.
  4. Busca la última línea anterior al momento en que empezó el error. El mensaje será técnico, pero a menudo incluye el nombre del archivo que falla (ej: require_once(.../modules/mimodulo/mimodulo.php)) .

Con ese nombre de archivo, ya sabes qué módulo o tema está causando el conflicto. La solución sería desactivar o renombrar ese módulo desde el FTP (cambiar el nombre de la carpeta del módulo en /modules/).


Preguntas Frecuentes (FAQ)

### ¿Por qué me sale el error 500 solo en el panel de administración?

Esto indica que el problema está en un módulo que se carga solo en el back-office, o un problema de permisos en la carpeta admin. Prueba a cambiar los permisos de la carpeta de administración a 755 y a limpiar la caché.

### ¿Puede un plugin de seguridad (firewall) causar el error 500?

Sí. Si instalaste un módulo de seguridad y configuró reglas demasiado estrictas, puede bloquear el acceso a archivos críticos. Si puedes, desactívalo renombrando su carpeta en /modules/.

### Mi hosting usa Syspanel, ¿es lo mismo que DirectAdmin?

No, son paneles distintos. Syspanel es el nombre que le damos al panel de control en algunos de nuestros servicios (el puerto de acceso es el 2106). Sin embargo, los pasos lógicos para solucionar el error 500 son los mismos que en DirectAdmin: revisar permisos, PHP y caché. La interfaz cambia, pero la lógica es idéntica.

### He probado todo y sigue el error. ¿Qué hago?

Si has seguido todos los pasos (permisos, htaccess, PHP, caché y logs) y el solucionar error 500 prestashop no ha sido posible, es muy probable que haya un error de código en un override o una corrupción de archivos del núcleo. La opción más rápida es restaurar una copia de seguridad reciente desde DirectAdmin (sección "Backups") o contactar con tu proveedor de hosting para que revisen los logs a nivel de servidor.


Conclusión

El error 500 prestashop directadmin es frustrante, pero no es el fin del mundo. Siguiendo esta guía en orden, desde lo más simple (permisos y caché) hasta lo más complejo (logs), tendrás una altísima probabilidad de resolverlo sin perder ventas.

Resumen rápido de la solución:

  1. Activa el modo debug para ver el error real.
  2. Corrige los permisos a 755/644.
  3. Regenera el .htaccess.
  4. Ajusta la versión y memoria de PHP.
  5. Borra la caché de var/cache.
  6. Revisa los logs.

Espero que este artículo te haya sido de gran ayuda. Si te quedas atascado, no dudes en consultar la documentación oficial de PrestaShop o abrir un ticket con tu soporte de hosting, mencionando que ya has realizado estos pasos. ¡Mucha suerte 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