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

Cómo solucionar el error de permisos 500 en PrestaShop con DirectAdmin

Actualizado el 16 de febrero de 2026

¿Por qué aparece el error 500 en PrestaShop y qué tiene que ver DirectAdmin?

El error 500 es uno de los más temidos, pero también uno de los más comunes. Cuando tu tienda PrestaShop muestra un error 500, significa que el servidor ha encontrado un problema interno que le impide procesar la solicitud. No es un error de tu código ni de tu producto, sino una respuesta genérica del servidor. La buena noticia es que, en la mayoría de los casos, la causa está relacionada con los permisos de archivos y carpetas, y con la configuración de DirectAdmin.

Si tu PrestaShop no carga y ves el temido error 500, no te preocupes. En esta guía vas a aprender a diagnosticarlo y solucionarlo paso a paso, incluso si no eres un experto técnico. Vamos a centrarnos en la relación entre el error 500 PrestaShop y los permisos en DirectAdmin, porque es la causa más frecuente y la que puedes resolver sin necesidad de contactar con soporte.

Primeros pasos: identifica el alcance del problema

Antes de tocar nada, necesitas saber si el error afecta a toda la tienda o solo a algunas páginas. Esto te dará pistas sobre si el problema está en los permisos de archivos, en el archivo .htaccess, o en algo más profundo.

  • Si el error 500 aparece en toda la tienda, es muy probable que el problema sea global: permisos de la carpeta raíz, archivos de configuración corruptos o problemas con el .htaccess.
  • Si solo aparece en páginas concretas (por ejemplo, al acceder al carrito o al panel de administración), el problema podría estar en los permisos de una carpeta específica, como var/cache, var/logs o img.

Otra pista importante: revisa si el error aparece también en el panel de administración de PrestaShop. Si no puedes acceder ni al back-office, el problema es más serio y probablemente esté relacionado con la estructura de archivos.

Herramientas que necesitas para esta tarea

Para solucionar el error 500 en PrestaShop con DirectAdmin, vas a necesitar:

  • Acceso a tu panel de control DirectAdmin.
  • Un cliente FTP como FileZilla (opcional, pero muy útil).
  • Acceso al administrador de archivos de DirectAdmin (File Manager).
  • Un navegador web con modo incógnito o una ventana privada para probar.

Si no tienes experiencia con FTP, no pasa nada. Con el Administrador de Archivos de DirectAdmin vas a poder hacer todo lo que necesitas.

Diagnóstico rápido: activa el modo de depuración de PrestaShop

Antes de cambiar permisos a lo loco, es muy recomendable activar el modo de depuración de PrestaShop. Este modo te mostrará el error real en lugar de la página genérica de error 500. Esto te ahorrará muchísimo tiempo.

Paso 1: Accede al archivo de configuración

Conecta por FTP o usa el Administrador de Archivos de DirectAdmin y navega hasta la raíz de tu instalación de PrestaShop. Busca el archivo llamado config/defines.inc.php.

Paso 2: Edita el valor de depuración

Abre el archivo y localiza esta línea:

define('_PS_MODE_DEV_', false);

Cámbiala a:

define('_PS_MODE_DEV_', true);

Guarda los cambios y sube el archivo si lo has editado en local.

Paso 3: Recarga tu tienda

Ahora recarga la página que daba el error 500. Verás un mensaje mucho más específico, como un error de permisos en una carpeta concreta o un problema con un módulo. Anota ese mensaje, porque te indicará exactamente dónde está el problema.

[TIP] Una vez hayas solucionado el error, vuelve a poner _PS_MODE_DEV_ en false. Dejarlo en true en producción es un riesgo de seguridad, ya que muestra información sensible del servidor.

La causa más común: permisos incorrectos en archivos y carpetas

DirectAdmin, por defecto, asigna permisos estándar a los archivos y carpetas que se crean. Pero cuando instalas PrestaShop, o cuando haces una migración, los permisos pueden quedar mal configurados. Esto provoca que PrestaShop no pueda escribir en ciertas carpetas, como la caché, los logs o las imágenes temporales, y el resultado es el error 500.

Permisos correctos para PrestaShop

La regla general es la siguiente:

  • Carpetas: permisos 755.
  • Archivos: permisos 644.
  • Archivos de configuración especiales (como config/settings.inc.php): permisos 444 o 644 (según el servidor).
  • Carpetas con escritura obligatoria (como var/cache, var/logs, img, download): permisos 755 o 775.

Si alguno de estos permisos está en 777, es un riesgo de seguridad, pero también puede causar conflictos. Si están en 600 o 400, PrestaShop no podrá leerlos y dará error 500.

Cómo cambiar permisos desde DirectAdmin

  1. Entra en tu panel de DirectAdmin.
  2. Ve a Administrador de archivos y navega hasta la carpeta raíz de PrestaShop.
  3. Selecciona todos los archivos y carpetas (Ctrl+A o usando la casilla de selección).
  4. En el menú superior, busca el botón de Permisos (normalmente tiene un icono de candado o engranaje).
  5. Introduce los permisos 755 para carpetas y 644 para archivos.
  6. Aplica los cambios.

[WARNING] No apliques permisos 777 a toda la estructura. Aunque parece la solución rápida, es un agujero de seguridad enorme. Si tu servidor lo permite, usa 755 y 644. Si tienes problemas con carpetas específicas, cámbialas individualmente a 775.

La carpeta var/cache: la culpable más frecuente

En PrestaShop 1.7 y 1.8, la carpeta var/cache es la que más problemas da. Si los permisos de esta carpeta no son correctos, PrestaShop no puede generar los archivos de caché y muestra el error 500.

Para solucionarlo:

  • Ve a var/cache y cambia los permisos a 755 (o 775 si tu servidor lo requiere).
  • Borra el contenido de la carpeta var/cache (pero no la carpeta en sí). Esto fuerza a PrestaShop a regenerar la caché desde cero.
  • Recarga tu tienda.

Si el problema persiste, repite la operación con var/logs, que también es una carpeta crítica.

El archivo .htaccess y su relación con el error 500

Otro culpable muy común es el archivo .htaccess. Este archivo controla las reglas de reescritura de URL, redirecciones y otras configuraciones del servidor. Si está corrupto o tiene permisos incorrectos, PrestaShop no carga y verás el error 500.

Solución: regenera el .htaccess desde el panel de administración

Si puedes acceder al panel de administración de PrestaShop (aunque sea a veces), la solución es sencilla:

  1. Ve a Parámetros avanzadosRendimiento.
  2. En la sección Reglas de reescritura, activa o desactiva la opción "Usar el archivo .htaccess".
  3. Guarda los cambios.
  4. Vuelve a activar la opción y guarda de nuevo.

Esto regenera el archivo .htaccess con los permisos y reglas correctos.

Solución manual desde DirectAdmin

Si no puedes acceder al panel de administración, tendrás que editar el .htaccess manualmente:

  1. Abre el Administrador de Archivos de DirectAdmin.
  2. Busca el archivo .htaccess en la raíz de PrestaShop.
  3. Si no lo ves, activa la opción "Mostrar archivos ocultos" en el Administrador de Archivos.
  4. Renombra el archivo a .htaccess.bak (esto lo desactiva temporalmente).
  5. Recarga tu tienda. Si ahora carga (aunque con URLs no amigables), el problema era el .htaccess.
  6. Si no tienes un backup del .htaccess, ve a la configuración de PrestaShop y actívalo de nuevo desde el panel, o copia un .htaccess limpio de una instalación estándar.

[INFO] Si renombras el .htaccess y PrestaShop sigue sin cargar, el problema no es este archivo. Vuelve a ponerle su nombre original y sigue con las siguientes comprobaciones.

Permisos de los archivos de configuración: settings.inc.php y defines.inc.php

Estos archivos son el corazón de PrestaShop. Si no se pueden leer o escribir correctamente, el error 500 está garantizado.

settings.inc.php

En PrestaShop 1.6 y versiones anteriores, este archivo contiene las credenciales de la base de datos. En versiones 1.7 y 1.8, la configuración se almacena en la tabla ps_configuration de la base de datos, pero aún puede haber un archivo de configuración en app/config/parameters.php.

Revisa los permisos de ambos archivos:

  • config/settings.inc.php (si existe): permisos 444 o 644.
  • app/config/parameters.php: permisos 644.

Si los permisos son 600, PrestaShop no puede leerlos. Si son 777, es un riesgo de seguridad.

La conexión con la base de datos: otro origen del error 500

Aunque el error 500 suele estar relacionado con permisos, a veces la causa es una conexión fallida a la base de datos. Si los permisos están bien pero PrestaShop sigue sin cargar, revisa lo siguiente:

  • Que las credenciales de la base de datos sean correctas (usuario, contraseña, nombre de la base y host).
  • Que la base de datos no esté caída o saturada.
  • Que el usuario de la base de datos tenga permisos suficientes (SELECT, INSERT, UPDATE, DELETE).

Para comprobarlo desde DirectAdmin:

  1. Ve a MySQL Management en tu panel.
  2. Verifica que la base de datos existe y que el usuario tiene privilegios.
  3. Si todo parece correcto, intenta hacer una copia de seguridad y restaurarla, o simplemente repara las tablas con phpMyAdmin.

[WARNING] Si cambias las credenciales de la base de datos, asegúrate de actualizarlas también en el archivo app/config/parameters.php. De lo contrario, PrestaShop no podrá conectarse y mostrará el error 500.

Cómo solucionar el error 500 cuando PrestaShop no carga tras una actualización o migración

Si el error 500 aparece después de actualizar PrestaShop o de migrar de servidor, el problema suele ser una mezcla de permisos y archivos obsoletos.

Limpia la caché de PrestaShop manualmente

A veces, la caché guarda datos antiguos que causan conflictos. Para limpiarla manualmente:

  1. Ve a la carpeta var/cache y borra todo su contenido.
  2. Ve a la carpeta var/logs y borra también su contenido.
  3. Si usas PrestaShop 1.6, busca la carpeta cache en la raíz y borra los archivos que contengan class_index o cache_ (pero no la carpeta).

Revisa los permisos de los módulos

Algunos módulos crean sus propias carpetas con permisos incorrectos. Si el error 500 aparece al activar un módulo o al acceder a una página que usa un módulo específico, revisa los permisos de la carpeta del módulo en /modules.

La solución es cambiar los permisos de la carpeta del módulo a 755 y los archivos a 644.

Solución definitiva: restablecer permisos en masa con un comando SSH

Si tienes acceso SSH a tu servidor (a través de DirectAdmin puedes habilitar el acceso SSH), la solución más rápida y completa es usar un comando para restablecer todos los permisos de una sola vez.

Conecta por SSH y ejecuta:

find /ruta/a/tu/prestashop -type f -exec chmod 644 {} \;
find /ruta/a/tu/prestashop -type d -exec chmod 755 {} \;

Esto aplica 644 a todos los archivos y 755 a todas las carpetas. Es la configuración estándar recomendada por PrestaShop.

[TIP] Si tu hosting usa un usuario diferente para PHP (por ejemplo, nobody o www-data), puede que necesites permisos 775 en las carpetas de escritura. Prueba primero con 755 y, si no funciona, cambia a 775.

¿Qué hago si nada de esto funciona?

Si has seguido todos los pasos y el error 500 PrestaShop persiste, puede que el problema esté en el servidor en sí, no en tu instalación. En ese caso:

  1. Revisa los logs del servidor. En DirectAdmin, ve a LogsError Logs y busca errores recientes relacionados con tu dominio.
  2. Contacta con tu proveedor de hosting, explicando que has verificado permisos, .htaccess y base de datos.
  3. Si tu hosting usa Syspanel (antes conocido como HestiaCP), recuerda que el puerto de acceso es el 2106. Puedes usar Syspanel para reiniciar servicios o revisar la configuración del dominio.

[INFO] Aunque esta guía está enfocada en DirectAdmin, los principios son los mismos en otros paneles como cPanel o Syspanel. Si usas Syspanel, el acceso se realiza a través del puerto 2106 y las opciones de permisos están en el Administrador de archivos.

Preguntas frecuentes sobre el error 500 en PrestaShop

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

Suele deberse a permisos incorrectos en carpetas específicas, como var/cache, img o la carpeta de un módulo. También puede ser un problema de configuración de URL amigables o del .htaccess.

¿Es seguro usar permisos 777 para solucionar el error?

No, nunca uses 777 de forma generalizada. Es un riesgo de seguridad enorme. Usa 755 para carpetas y 644 para archivos. Si necesitas más flexibilidad, usa 775 en carpetas de escritura específicas.

¿El error 500 puede deberse a un problema de PHP?

Sí, a veces el error 500 está relacionado con la versión de PHP. PrestaShop 1.7 requiere PHP 7.1 o superior. Si tu servidor usa PHP 5.6, es probable que tengas errores. Desde DirectAdmin puedes cambiar la versión de PHP en Extra FeaturesPHP Selector.

¿Debo borrar la carpeta var/cache siempre?

Sí, es una práctica segura. Borrar el contenido de var/cache no elimina datos importantes, solo la caché temporal. PrestaShop la regenerará automáticamente.

¿Cómo sé si el problema es del servidor y no de mi tienda?

Si has probado todo lo anterior y el error persiste, revisa los logs del servidor. Si ves errores de "permiso denegado" o "segfault", el problema está en la configuración del servidor. Contacta con tu proveedor de hosting.

Resumen final: tu checklist para solucionar el error 500 en PrestaShop

Sigue este orden y resolverás el problema en el 90% de los casos:

  1. Activa el modo de depuración para ver el error real.
  2. Revisa y corrige los permisos de carpetas (755) y archivos (644).
  3. Limpia la caché de var/cache y var/logs.
  4. Regenera o reemplaza el archivo .htaccess.
  5. Verifica la conexión con la base de datos.
  6. Revisa los permisos de los módulos.
  7. Si nada funciona, usa SSH para restablecer permisos en masa.
  8. Consulta los logs del servidor y contacta con soporte si es necesario.

Con esta guía, el error 500 PrestaShop dejará de ser un misterio. La mayoría de las veces, la solución está en los permisos que gestionas desde DirectAdmin. Tómate tu tiempo, sigue los pasos con calma y verás cómo tu tienda vuelve a cargar sin problemas.

¿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