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

Guía para solucionar el error '500 Internal Server Error' en PrestaShop con DirectAdmin

Actualizado el 6 de marzo de 2026

¡Hola! Soy tu técnico de soporte amigable. Si estás viendo un molesto "Error 500 Internal Server Error" en tu tienda PrestaShop alojada en un servidor con DirectAdmin, no te preocupes. Este es un error muy común y, en la mayoría de los casos, lo puedes solucionar tú mismo sin necesidad de ser un experto.

En esta guía completa, te explicaré paso a paso cómo diagnosticar y solucionar error 500 PrestaShop cuando tu panel de control es DirectAdmin. Vamos a desglosar las causas más frecuentes y las soluciones más efectivas para que tu tienda vuelva a funcionar en minutos.


¿Qué significa el error 500 Internal Server Error?

El error 500 es un código de estado HTTP genérico que significa "Error interno del servidor". Básicamente, el servidor web (Apache o Nginx) no puede procesar tu solicitud porque algo falló en el código de tu web o en la configuración del servidor. Es como si el motor de tu coche se apagara de repente: no te dice exactamente qué pieza falló, pero sabemos que algo no funciona bien.

[INFO] A diferencia de errores como el 404 (página no encontrada) o el 403 (acceso prohibido), el error 500 no te da pistas visuales. Por eso, debemos investigar un poco más a fondo.


Causas más comunes del error 500 en PrestaShop con DirectAdmin

Antes de lanzarnos a las soluciones, es útil conocer qué suele provocar este error en un entorno PrestaShop + DirectAdmin:

  1. Archivo .htaccess corrupto o mal configurado: Es la causa número uno. Un simple cambio en la URL o una mala regla de redirección puede romper todo.
  2. Problemas de permisos de archivos y carpetas: PrestaShop necesita permisos específicos para leer y escribir archivos (como imágenes, caché, etc.). Si están incorrectos, el servidor se bloquea.
  3. Límite de memoria PHP excedido (memory_limit): Si tu tienda tiene muchos módulos o tráfico, puede agotar la memoria PHP asignada.
  4. Módulo o tema defectuoso: Un módulo recién instalado o desactualizado puede generar un conflicto fatal.
  5. Versión de PHP incompatible: PrestaShop requiere una versión específica de PHP. Si tu servidor la cambió o no es la correcta, falla.
  6. Archivos PHP corruptos o incompletos: Una actualización fallida o una subida de archivos por FTP interrumpida puede dejar tu tienda inservible.

Paso a paso: Cómo solucionar el error 500 en PrestaShop con DirectAdmin

Sigue estos pasos en orden. La mayoría de las veces, el primero o el segundo resolverán el problema.

1. La solución mágica: Renombrar el archivo .htaccess

Este es el primer paso y el que más veces funciona. El archivo .htaccess controla las reglas de reescritura de URL y otras configuraciones de Apache. Si está dañado, podemos desactivarlo temporalmente.

¿Cómo hacerlo desde DirectAdmin?

  1. Accede a tu panel de DirectAdmin (normalmente tudominio.com:2222).
  2. Ve a Administrador de archivos (File Manager).
  3. Entra en la carpeta public_html (o domains/tudominio.com/public_html).
  4. Busca el archivo llamado .htaccess. Importante: puede estar oculto. Activa la opción "Mostrar archivos ocultos" (Show Hidden Files) en la esquina superior derecha del administrador de archivos.
  5. Haz clic derecho sobre .htaccess y selecciona Renombrar (Rename).
  6. Cámbiale el nombre a algo como .htaccess_backup o .htaccess.old. Esto lo desactivará.
  7. Vuelve a cargar tu tienda. Si el error desaparece, ¡el problema era el .htaccess!

¿Qué hago ahora? Si ya no da error, debes generar un nuevo .htaccess limpio. Ve al panel de administración de PrestaShop (si puedes acceder) a Parámetros de la tienda > Tráfico y SEO > URL amigables y guarda la configuración de nuevo. Esto regenerará el archivo automáticamente.

[TIP] Si no puedes acceder al panel de administración, puedes crear un .htaccess básico. Copia y pega este código en un bloc de notas y súbelo como .htaccess:

# START: Configuración básica PrestaShop
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
# END: Configuración básica PrestaShop

2. Verificar y corregir permisos de archivos

Los permisos incorrectos son otra causa muy común de DirectAdmin PrestaShop problemas. PrestaShop necesita que las carpetas tengan permisos 755 y los archivos 644.

Pasos para corregirlos en DirectAdmin:

  1. En el Administrador de archivos, selecciona TODA la carpeta public_html (marca la casilla junto a la carpeta raíz).
  2. En la barra superior, haz clic en Cambiar permisos (Change Permissions).
  3. Se abrirá una ventana. Marca las siguientes opciones:
    • Archivos: 644 (lectura/escritura para el propietario, solo lectura para grupo y otros).
    • Carpetas: 755 (lectura/escritura/ejecución para el propietario, lectura/ejecución para grupo y otros).
  4. Asegúrate de marcar "Recursivo" (Recursive) para que se aplique a todas las subcarpetas y archivos.
  5. Haz clic en Aceptar.

Después de esto, prueba tu tienda de nuevo.

3. Aumentar el límite de memoria PHP (memory_limit)

Si tu tienda se queda sin memoria, el servidor lanza un error 500. Puedes aumentarlo desde DirectAdmin.

  1. En DirectAdmin, busca la sección Configuración de PHP (PHP Settings) o Selector de PHP (PHP Selector). Su ubicación exacta depende de la versión de DirectAdmin, pero suele estar en el menú principal o en "Características avanzadas".
  2. Dentro, busca la opción memory_limit.
  3. Cámbiala a un valor más alto. Recomendamos:
    • Mínimo: 128M
    • Recomendado: 256M o 512M si tu tienda es grande.
  4. Guarda los cambios y recarga tu web.

[WARNING] Si no encuentras esta opción, puede que tu hosting tenga restricciones. Contacta con tu proveedor para que lo aumente.

4. Activar el modo debug de PrestaShop para ver el error real

El error 500 es genérico, pero PrestaShop puede mostrarte el error real si activas el modo debug. Esto te dará una pista exacta (por ejemplo, "Fatal error: Class 'MiModulo' not found").

¿Cómo activarlo? Debes editar un archivo llamado defines.inc.php que está en la carpeta config de tu PrestaShop.

  1. Ve a Administrador de archivos > public_html/config/.
  2. Busca el archivo defines.inc.php.
  3. Haz clic derecho y selecciona Editar (Edit).
  4. Busca esta línea (normalmente al principio):
    define('_PS_MODE_DEV_', false);
  5. Cámbiala por:
    define('_PS_MODE_DEV_', true);
  6. Guarda el archivo.
  7. Ahora, cuando cargues tu tienda, en lugar del error 500 genérico, verás un mensaje descriptivo como:
    "Fatal error: Uncaught Error: Class 'Module' not found in /home/usuario/public_html/modules/mimodulo/mimodulo.php:12".
  8. Anota ese error. Te dirá exactamente qué módulo o archivo está fallando.

[INFO] Una vez hayas solucionado el problema, NO OLVIDES volver a poner define('_PS_MODE_DEV_', false); para que los errores no sean visibles para tus clientes.

5. Deshabilitar módulos problemáticos manualmente

Si el error del paso 4 menciona un módulo en concreto, la solución es deshabilitarlo. Si no puedes acceder al panel de administración, hazlo manualmente:

  1. Ve a la carpeta public_html/modules/.
  2. Busca la carpeta del módulo problemático (por ejemplo, mimodulo).
  3. Renómbrala añadiendo un guión bajo al final, por ejemplo: mimodulo_.
  4. Al renombrarla, PrestaShop no podrá cargarla y la desactivará automáticamente.
  5. Vuelve a probar tu tienda. Si funciona, ya sabes qué módulo es el culpable. Puedes eliminarlo o reinstalarlo más tarde.

6. Verificar la versión de PHP

PrestaShop 1.7, por ejemplo, necesita PHP 7.1 como mínimo, y se recomienda PHP 8.0 o 8.1. Las versiones muy antiguas o muy nuevas pueden dar conflictos.

  1. En DirectAdmin, busca Selector de PHP o PHP Version.
  2. Elige una versión compatible con tu PrestaShop. Consulta la documentación oficial de tu versión.
  3. Guarda los cambios. El servidor tardará unos segundos en aplicar el cambio.

7. Revisar los logs de error del servidor

Si nada de lo anterior funciona, los logs del servidor son tu mejor amigo. Son archivos donde se registran todos los errores.

Cómo acceder a los logs en DirectAdmin:

  1. En DirectAdmin, busca Logs de errores (Error Logs) o Registros del servidor.
  2. Normalmente encontrarás el archivo error_log dentro de tu carpeta public_html.
  3. Ábrelo. Verás líneas como:
    [Mon Jan 15 10:00:00.123456 2024] [proxy_fcgi:error] [pid 12345] [client IP] AH01071: Got error 'PHP message: PHP Fatal error: ...
  4. Busca la línea más reciente que coincida con la hora en que viste el error. Te dará la pista definitiva.

[TIP] Si el archivo error_log es enorme, puedes descargarlo a tu ordenador y buscar la palabra "error" o "PHP Fatal" con un editor de texto.


Preguntas Frecuentes (FAQ) sobre el error 500 en PrestaShop

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

Esto suele indicar un problema con un módulo específico que se carga en esa página, o con una regla de .htaccess que afecta a una URL concreta. Sigue los pasos 1 (htaccess) y 5 (deshabilitar módulos).

¿El error 500 puede deberse a un ataque de hackers?

Sí, es posible. Si tu tienda fue hackeada, los archivos pueden haber sido modificados para incluir código malicioso que rompe la ejecución. Si sospechas de esto, revisa los archivos PHP más recientemente modificados en el Administrador de archivos.

¿Qué hago si no puedo acceder ni al panel de administración de PrestaShop ni a DirectAdmin?

Si no tienes acceso a nada, contacta con tu proveedor de hosting. Ellos pueden reiniciar servicios o revisar los logs del servidor a nivel raíz. Es posible que el problema sea de infraestructura (por ejemplo, el servidor web caído).

¿El error 500 afecta al SEO de mi tienda?

Sí, totalmente. Si el error persiste durante horas o días, los motores de búsqueda como Google pueden penalizar tu sitio, reduciendo tu posicionamiento. También perderás clientes que no puedan acceder a tu tienda. Por eso es crucial solucionarlo rápido.

¿Puedo prevenir el error 500 en el futuro?

Sí, siguiendo estas buenas prácticas:

  • Actualiza PrestaShop, módulos y temas regularmente.
  • Haz copias de seguridad antes de cualquier cambio grande.
  • No instales módulos de fuentes no confiables.
  • Configura un límite de memoria PHP adecuado (256M o más).
  • Mantén un ojo en los logs de error para detectar problemas antes de que se vuelvan críticos.

Conclusión

El error 500 PrestaShop DirectAdmin puede ser frustrante, pero como has visto, la mayoría de las veces se soluciona con pasos simples como renombrar el .htaccess o corregir permisos. Espero que esta guía te haya sido de gran ayuda.

Recuerda: no entres en pánico, sigue los pasos en orden y, si te quedas atascado, los logs de error son tu mapa del tesoro. ¡Tu tienda volverá a estar online en poco tiempo!

Si tienes más dudas, no dudes en dejar un comentario. ¡Estoy aquí para ayudarte!

¿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