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

Solución al error 500 en PrestaShop en DirectAdmin

Actualizado el 13 de septiembre de 2025

¿Tu tienda PrestaShop ha dejado de funcionar de repente y ves una pantalla en blanco o el temido Error 500? No te preocupes, es uno de los problemas más comunes en servidores con DirectAdmin y, aunque parezca grave, suele tener una solución clara y sencilla. En esta guía te explicaré paso a paso cómo solucionar error 500 DirectAdmin cuando tu Prestashop no carga error servidor. Vamos a ir desde lo más básico hasta lo más técnico, pero siempre con un lenguaje fácil de entender.

¿Qué significa exactamente el error 500 en PrestaShop?

El error 500 es un código de estado HTTP que indica que algo salió mal en el servidor, pero sin dar detalles específicos. En el contexto de error 500 Prestashop, suele deberse a:

  • Un archivo .htaccess corrupto o mal configurado.
  • Problemas de permisos en archivos o carpetas.
  • Un script PHP que se cuelga (límite de memoria, tiempo de ejecución, etc.).
  • Conflictos con módulos o temas recién instalados.
  • Una versión de PHP incompatible con tu PrestaShop.

Lo bueno es que, con DirectAdmin, tienes herramientas a tu alcance para diagnosticar y reparar todo rápidamente.

Primeros pasos: activar el modo debug de PrestaShop

Antes de tocar nada, lo más inteligente es hacer que PrestaShop te muestre el error real. Por defecto, oculta los detalles por seguridad, pero nosotros necesitamos verlos.

### Activar el modo debug desde el archivo config/defines.inc.php

  1. Accede a tu DirectAdmin (normalmente en tudominio.com:2222).
  2. Ve a Administrador de archivos y navega hasta la carpeta raíz de tu PrestaShop (suele ser public_html o domains/tudominio.com/public_html).
  3. Busca la carpeta config y dentro el archivo defines.inc.php.
  4. Haz clic derecho y selecciona Editar (o descárgalo, edítalo y súbelo de nuevo).
  5. Busca la línea: define('_PS_MODE_DEV_', false);
  6. Cámbiala por: define('_PS_MODE_DEV_', true);
  7. Guarda los cambios.

Ahora, al recargar tu tienda, en lugar del error 500 genérico, verás un mensaje descriptivo como "Fatal error: Allowed memory size exhausted" o "Parse error: syntax error". Esa es la pista que necesitas.

[TIP] Si no ves nada o la página sigue en blanco, revisa que el archivo se haya guardado correctamente y que no tenga errores de sintaxis. También puedes probar a añadir justo después de esa línea: ini_set('display_errors', 'on');

Causa común #1: Archivo .htaccess corrupto

El .htaccess es el archivo que gestiona las reglas de reescritura de URL y redirecciones. Si se daña, tu PrestaShop puede lanzar un error 500 al instante.

### Cómo regenerar el .htaccess desde DirectAdmin

  1. En el Administrador de archivos de DirectAdmin, localiza el archivo .htaccess en la raíz de tu PrestaShop.
  2. Renómbralo a algo como .htaccess_old (esto lo desactiva temporalmente).
  3. Ahora, entra al panel de administración de tu PrestaShop (si puedes acceder) y ve a Parámetros de la tienda > Tráfico y SEO > SEO y URLs.
  4. Sin cambiar nada, haz clic en Guardar. Esto regenerará el .htaccess automáticamente.
  5. Si no puedes acceder al panel, tendrás que crear uno nuevo manualmente. Copia este contenido básico en un archivo de texto y súbelo como .htaccess:
# START PrestaShop
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
# END PrestaShop

[WARNING] Si usas SSL (HTTPS), asegúrate de que el .htaccess también incluya las reglas de redirección a HTTPS. Si no, tu tienda podría quedar en un bucle infinito.

Causa común #2: Permisos de archivos y carpetas incorrectos

Los permisos en un servidor Linux (como el de DirectAdmin) determinan quién puede leer, escribir o ejecutar archivos. PrestaShop necesita permisos específicos para funcionar.

### Permisos correctos para PrestaShop

  • Carpetas: 755 (rwxr-xr-x)
  • Archivos: 644 (rw-r--r--)

### Cómo corregirlos desde DirectAdmin

  1. En el Administrador de archivos, selecciona toda la carpeta de tu tienda (por ejemplo, public_html).
  2. Haz clic en Cambiar permisos.
  3. Marca:
    • Propietario: Lectura, Escritura, Ejecución.
    • Grupo: Lectura, Ejecución.
    • Otros: Lectura, Ejecución.
      Esto dará 755 a las carpetas.
  4. Luego, para los archivos, repite pero sin marcar Ejecución en ninguna casilla. Eso dará 644.

[INFO] Si tienes muchos archivos, puedes usar el comando find desde SSH, pero si no te sientes cómodo, hazlo carpeta por carpeta. DirectAdmin no tiene opción de aplicar permisos recursivos de forma masiva desde la interfaz gráfica, así que tendrás que hacerlo manualmente o pedir ayuda a tu hosting.

Causa común #3: Límites de PHP (memoria, tiempo de ejecución)

PrestaShop, sobre todo con muchos productos o módulos, puede exceder los límites de PHP. Esto es muy frecuente en servidores compartidos con DirectAdmin.

### Aumentar la memoria PHP desde DirectAdmin

  1. Ve a Características adicionales > Selector de PHP (o PHP Settings).
  2. Busca la opción memory_limit y cámbiala a 256M o incluso 512M.
  3. También ajusta:
    • max_execution_time a 120 (o más).
    • upload_max_filesize a 64M.
    • post_max_size a 64M.
  4. Guarda los cambios y reinicia el servicio PHP (normalmente hay un botón para ello).

Si no ves el selector de PHP, es que tu plan de hosting no lo permite. En ese caso, tendrás que crear un archivo php.ini en la raíz de tu PrestaShop con este contenido:

memory_limit = 256M
max_execution_time = 120
upload_max_filesize = 64M
post_max_size = 64M

[TIP] Si tu PrestaShop es muy pesado, considera actualizar a un plan con más recursos o usar un plugin de caché para reducir la carga.

Causa común #4: Módulo o tema conflictivo

A veces, un módulo recién instalado o un tema mal codificado puede romper toda la tienda. El error 500 aparece justo después de activarlo.

### Cómo deshabilitar módulos desde la base de datos

Si no puedes acceder al panel de administración, tendrás que hacerlo directamente en la base de datos MySQL desde phpMyAdmin en DirectAdmin.

  1. En DirectAdmin, ve a phpMyAdmin (suele estar en Características adicionales).
  2. Selecciona la base de datos de tu PrestaShop.
  3. Busca la tabla ps_module (o prestashop_module según el prefijo).
  4. Haz clic en Examinar.
  5. Localiza el módulo sospechoso (por el nombre) y borra su fila (o cambia active a 0).

Otra opción más drástica pero segura: renombrar la carpeta del módulo en el servidor.

  1. En el Administrador de archivos, ve a modules/.
  2. Busca la carpeta del módulo problemático y renómbrala (ej: micromodulo a micromodulo_desactivado).
  3. PrestaShop dejará de cargarlo automáticamente.

[WARNING] No borres la carpeta del módulo, solo renómbrala. Así podrás volver a activarlo después si no era el culpable.

Causa común #5: Versión de PHP incompatible

PrestaShop 1.6, 1.7 y 8.x requieren versiones de PHP específicas. Si tu servidor tiene una versión muy nueva o muy vieja, puede dar error 500.

### Verificar y cambiar la versión de PHP en DirectAdmin

  1. Ve a Características adicionales > Selector de PHP.
  2. Elige la versión recomendada para tu PrestaShop:
    • PrestaShop 1.6: PHP 5.6 o 7.0 (mejor 7.0).
    • PrestaShop 1.7: PHP 7.1 a 7.4 (recomendado 7.4).
    • PrestaShop 8.x: PHP 7.4 u 8.0 (recomendado 8.0).
  3. Guarda y reinicia.

[INFO] Si tu PrestaShop es muy antiguo, considera actualizarlo. Las versiones viejas con PHP moderno suelen dar problemas de compatibilidad.

Solución avanzada: revisar los logs del servidor

Si después de todo lo anterior el error 500 Prestashop persiste, toca mirar los logs del servidor. En DirectAdmin, los logs de error de Apache o Nginx están en:

  • Administrador de archivos > domains/tudominio.com/logs/ (o public_html/logs/).
  • Busca archivos como error.log o php_error.log.

Ábrelos y busca la línea que coincida con la hora del error. Por ejemplo:

[Fri Jan 12 10:00:00 2025] [error] [client 192.168.1.1] PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted

Esa línea te dice exactamente qué falló. La mayoría de las veces es memoria o un archivo PHP con sintaxis incorrecta.

FAQ: Preguntas frecuentes sobre el error 500 en PrestaShop

¿El error 500 puede deberse a un plugin de caché?

Sí, a veces los plugins de caché generan archivos temporales corruptos. Borra la carpeta cache/ de tu PrestaShop (excepto el archivo index.php) y desactiva el plugin desde la base de datos si es necesario.

¿Cómo restauro mi tienda si no puedo acceder ni al panel?

Usa una copia de seguridad de los archivos y la base de datos desde DirectAdmin. Ve a Copia de seguridad y restaura la versión anterior al error.

¿El error 500 afecta al SEO?

Sí, si el error se mantiene por horas o días, Google puede desindexar tus páginas. Soluciónalo lo antes posible y, una vez reparado, solicita una revisión en Google Search Console.

¿Puedo evitar este error en el futuro?

Sí, mantén PrestaShop actualizado, usa un hosting de calidad, no instales módulos de fuentes dudosas y haz copias de seguridad periódicas.

Conclusión: no entres en pánico, el error 500 tiene solución

Como has visto, solucionar error 500 DirectAdmin en PrestaShop es cuestión de seguir un orden lógico: activar el modo debug, revisar el .htaccess, ajustar permisos, aumentar límites de PHP y desactivar módulos conflictivos. La mayoría de las veces, con solo uno de estos pasos tu tienda volverá a la vida.

Si después de todo esto tu Prestashop no carga error servidor, puede que el problema sea más profundo (como un error en el núcleo de PrestaShop o un servidor mal configurado). En ese caso, contacta con el soporte de tu hosting y muéstrales los logs que encontraste. Con esa información, ellos podrán ayudarte rápidamente.

Recuerda: la paciencia y el método son tus mejores aliados. ¡Manos a la obra y buena 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