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

Solución a errores comunes en PrestaShop con DirectAdmin: permisos y 500 error

Actualizado el 31 de diciembre de 2025

¿Por qué aparece el error 500 en PrestaShop con DirectAdmin?

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. No te preocupes, es uno de los problemas más comunes y, en la mayoría de los casos, tiene solución rápida sin necesidad de ser un experto en programación.

El error 500 en PrestaShop es un error genérico del servidor que indica que algo falló internamente, pero no te dice exactamente qué es. Las causas más frecuentes están relacionadas con permisos de archivos incorrectos, problemas de configuración en el archivo .htaccess, o conflictos con módulos recién instalados.

Cuando trabajamos con DirectAdmin como panel de control, la gestión de permisos tiene sus particularidades. Entender cómo funciona este sistema te ahorrará muchos dolores de cabeza y te permitirá solucionar PrestaShop en DirectAdmin de forma autónoma.


Primeros pasos: identifica el origen del error 500

Antes de tocar nada, necesitas saber exactamente qué está fallando. El error 500 puede deberse a múltiples factores, así que vamos a descartar posibilidades una a una.

Revisa el registro de errores del servidor

El primer lugar donde debes mirar es el log de errores de DirectAdmin. Para ello:

  1. Accede a tu panel de DirectAdmin con tus credenciales.
  2. Busca la sección "Gestor de archivos" o "Administrador de archivos" (depende de la versión).
  3. Localiza la carpeta logs dentro de tu directorio principal (/home/usuario/).
  4. Abre el archivo error.log o error_log y busca las últimas líneas con fecha de hoy.

[INFO] Si no encuentras el archivo de logs, puedes activar la visualización de errores temporalmente editando el archivo config/defines.inc.php de PrestaShop. Cambia la línea define('_PS_MODE_DEV_', false); por define('_PS_MODE_DEV_', true);. Verás los errores directamente en pantalla, pero recuerda desactivarlo después.

Prueba a desactivar módulos recientes

Si el error apareció después de instalar o actualizar un módulo, ese es el culpable más probable. Para comprobarlo:

  1. Accede a tu servidor por FTP o mediante el gestor de archivos de DirectAdmin.
  2. Renombra la carpeta /modules/nombre_del_modulo_sospechoso a /modules/nombre_del_modulo_sospechoso_bak.
  3. Intenta cargar tu tienda de nuevo.

Si el error desaparece, ya sabes qué módulo causaba el problema. Puedes reinstalarlo o buscar una versión compatible.


Permisos de archivos y carpetas en PrestaShop con DirectAdmin

Los permisos incorrectos son la causa número uno del error 500 en PrestaShop. Cada archivo y carpeta tiene un nivel de acceso que determina quién puede leer, escribir o ejecutar. Si estos permisos son demasiado restrictivos o demasiado abiertos, el sistema falla.

Permisos correctos para PrestaShop

Estos son los valores que debes usar:

ElementoPermiso recomendado
Carpetas755
Archivos PHP644
Archivo .htaccess644
Archivo settings.inc.php644
Carpeta cache755
Carpeta log755
Carpeta img755
Carpeta upload755
Carpeta download755
Carpeta translations755
Carpeta mails755
Carpeta themes755
Carpeta modules755

[WARNING] Nunca uses permisos 777 en producción. Aunque a veces "funciona" porque da acceso total, es un agujero de seguridad gravísimo. Cualquier persona podría modificar tus archivos.

Cómo cambiar permisos con DirectAdmin

El proceso es muy sencillo:

  1. Entra en el Gestor de archivos de DirectAdmin.
  2. Navega hasta la raíz de tu instalación de PrestaShop.
  3. Selecciona todos los archivos y carpetas con la casilla de verificación.
  4. En el menú superior, haz clic en "Cambiar permisos".
  5. Introduce el valor correcto (755 para carpetas, 644 para archivos).
  6. Marca la opción "Recursivo" para aplicar a subcarpetas.
  7. Haz clic en "Aceptar".

[TIP] Si tienes acceso SSH, puedes usar el comando find /ruta/a/prestashop -type d -exec chmod 755 {} \; para carpetas y find /ruta/a/prestashop -type f -exec chmod 644 {} \; para archivos. Es mucho más rápido.

El archivo .htaccess y los permisos especiales

El .htaccess es un archivo de configuración crucial para PrestaShop. Si tiene permisos incorrectos o está corrupto, el error 500 es casi inmediato.

Para regenerarlo:

  1. Accede a tu panel de administración de PrestaShop.
  2. Ve a Preferencias → SEO y URLs.
  3. Activa la opción "Usar URL amigables" (si estaba desactivada).
  4. Guarda los cambios. Esto regenera automáticamente el .htaccess.

Si no puedes acceder al panel de administración, crea un archivo .htaccess vacío en la raíz y luego intenta acceder. PrestaShop lo regenerará automáticamente.


El error 500 y los problemas de memoria PHP

Otra causa muy común del error 500 en PrestaShop es la falta de memoria PHP. Las tiendas con muchos productos, módulos o tráfico necesitan más memoria de la que el servidor asigna por defecto.

Aumentar el límite de memoria en DirectAdmin

Para solucionarlo:

  1. Accede al Gestor de archivos de DirectAdmin.
  2. Busca el archivo php.ini en la raíz de tu cuenta o en la carpeta public_html.
  3. Si no existe, créalo con un editor de texto.
  4. Añade estas líneas:
memory_limit = 256M
max_execution_time = 120
max_input_time = 120
upload_max_filesize = 64M
post_max_size = 64M
  1. Guarda los cambios y reinicia PHP desde DirectAdmin (sección "Reiniciar PHP" o "Gestión de servicios").

[INFO] Algunos proveedores de hosting no permiten modificar php.ini directamente. En ese caso, crea un archivo .user.ini en la raíz con el mismo contenido. DirectAdmin respeta este archivo.

Alternativa: modificar desde el panel de administración

Si tienes acceso al panel de PrestaShop, ve a Parámetros avanzados → Rendimiento y ajusta la configuración de memoria desde ahí. Aunque la opción más fiable siempre es el php.ini.


Solucionar error 500 tras actualizar PrestaShop

Las actualizaciones son necesarias, pero a veces rompen algo en el camino. Si el error 500 apareció después de actualizar, prueba esto:

Limpiar la caché de PrestaShop

La caché acumulada puede causar conflictos graves:

  1. Con tu gestor FTP o el gestor de archivos de DirectAdmin, ve a la carpeta /var/cache/.
  2. Elimina todo el contenido de las subcarpetas dev, prod y cache.
  3. También borra el contenido de /cache/smarty/ si existe.
  4. Intenta cargar tu tienda.

Verificar la versión de PHP

PrestaShop 1.7 y versiones superiores requieren PHP 7.1 o superior. Si tu servidor tiene PHP 5.6 o anterior, tendrás problemas graves.

Para comprobarlo en DirectAdmin:

  1. Ve a la sección Configuración de PHP o Selector de versión de PHP.
  2. Selecciona la versión más reciente compatible con tu PrestaShop (PHP 7.4 u 8.0 son buenas opciones).
  3. Guarda los cambios.

[WARNING] Antes de cambiar la versión de PHP, asegúrate de que tus módulos y temas son compatibles. Algunos módulos antiguos no funcionan con PHP 8.


El error 500 y los conflictos de tema

Un tema mal configurado puede provocar fallos catastróficos. Si el error apareció tras cambiar de tema:

  1. Accede por FTP a la carpeta /themes/.
  2. Renombra la carpeta de tu tema actual a tema_bak.
  3. Copia el tema por defecto de PrestaShop (classic en versiones 1.7) en su lugar.
  4. Prueba tu tienda.

Si funciona, el problema es del tema. Contacta con su desarrollador o busca una alternativa compatible.


Errores de base de datos y el error 500

A veces el error 500 no tiene nada que ver con archivos, sino con la base de datos. PrestaShop necesita que la base de datos esté siempre sincronizada.

Reparar tablas dañadas

  1. Accede a phpMyAdmin desde DirectAdmin.
  2. Selecciona la base de datos de tu PrestaShop.
  3. Marca todas las tablas con la casilla superior.
  4. Despliega el menú "Con seleccionados" y elige "Reparar tabla".

Verificar la configuración de conexión

El archivo config/settings.inc.php contiene los datos de conexión a la base de datos. Si estos datos son incorrectos, el error 500 es inevitable.

Abre el archivo y verifica:

  • define('_DB_SERVER_', 'localhost'); (o la IP de tu servidor de BD)
  • define('_DB_NAME_', 'tu_base_de_datos');
  • define('_DB_USER_', 'tu_usuario');
  • define('_DB_PASSWD_', 'tu_contraseña');

[TIP] Si acabas de migrar tu tienda a un nuevo servidor, es muy común que estos datos hayan cambiado. Asegúrate de actualizarlos.


Soluciones avanzadas para el error 500

Si has probado todo lo anterior y el error persiste, necesitas ir un paso más allá.

Activar el modo depuración

Edita el archivo config/defines.inc.php y busca:

define('_PS_MODE_DEV_', false);

Cámbialo a true. Esto mostrará el error específico en pantalla, lo que te dará pistas exactas sobre qué está fallando.

Desactivar todos los módulos no esenciales

Si el error persiste, puede que un módulo esté causando un conflicto. Renombra la carpeta /modules/ a /modules_bak/ y crea una carpeta vacía /modules/. PrestaShop funcionará sin módulos. Si la tienda carga, el problema es de un módulo específico.

[WARNING] Esto desactivará todos los módulos, incluidos los de pago. Úsalo solo como diagnóstico temporal.

Verificar el archivo de configuración de DirectAdmin

DirectAdmin tiene su propia configuración de PHP que puede interferir. Revisa la sección Configuración personalizada de PHP y asegúrate de que no hay valores restrictivos como disable_functions que bloqueen funciones necesarias.


Preguntas frecuentes sobre errores de PrestaShop con DirectAdmin

¿Por qué mi tienda da error 500 solo en algunas páginas?

Esto suele indicar que el problema está en un módulo o función específica que se carga solo en ciertas páginas. Revisa los logs de error para identificar qué módulo se está cargando en esas páginas.

¿Los permisos 755 y 644 son obligatorios?

Sí, son los valores estándar que PrestaShop espera. Si usas otros valores, la tienda puede funcionar al principio pero fallar en el momento más inesperado.

¿Cuánto tiempo se tarda en solucionar estos errores?

Depende del problema. Los permisos incorrectos se arreglan en 5 minutos. Los conflictos de módulos pueden llevar más tiempo porque hay que identificar al culpable.

¿Puedo usar Syspanel en lugar de DirectAdmin?

Sí, si tu hosting usa Syspanel (antes conocido como HestiaCP), el proceso es similar. Accede a través del puerto 2106 (https://tu-dominio:2106) y busca las herramientas de gestión de archivos y permisos. Los principios son los mismos.

¿Qué hago si nada funciona?

Si has agotado todas las opciones, puede que necesites contactar con tu proveedor de hosting. A veces el error 500 está relacionado con restricciones del servidor que solo ellos pueden modificar.


Resumen final: checklist para solucionar el error 500 en PrestaShop

Sigue esta lista de verificación en orden:

  1. Revisa los logs de error para identificar la causa exacta.
  2. Verifica los permisos de carpetas (755) y archivos (644).
  3. Regenera el .htaccess desde el panel de administración.
  4. Aumenta el límite de memoria PHP a 256M o más.
  5. Limpia la caché de PrestaShop y del navegador.
  6. Desactiva módulos recientes o sospechosos.
  7. Comprueba la versión de PHP y la compatibilidad.
  8. Verifica la base de datos y repara tablas dañadas.
  9. Activa el modo depuración para ver errores específicos.
  10. Si todo falla, contacta con tu proveedor de hosting.

[INFO] La mayoría de los errores de PrestaShop con DirectAdmin se resuelven con los pasos 1 al 4. Los pasos 5 al 8 son para casos más complejos.

Recuerda siempre hacer una copia de seguridad antes de realizar cambios importantes. Los permisos incorrectos y los errores de configuración pueden empeorar si no sabes exactamente qué estás haciendo.

Con estas soluciones, podrás solucionar PrestaShop en DirectAdmin y volver a tener tu tienda online funcionando en poco tiempo. No te frustres si no funciona a la primera: la práctica hace al maestro, y cada error te enseña algo nuevo sobre cómo funciona tu tienda por dentro.

¿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