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

Cómo arreglar el error 500 en PrestaShop (cPanel, DirectAdmin)

Actualizado el 21 de marzo de 2026

¿Por qué aparece el error 500 en PrestaShop?

El temido error 500 PrestaShop es uno de los problemas más comunes (y frustrantes) que puedes encontrar al gestionar tu tienda online. También se conoce como "Error Interno del Servidor". Básicamente, significa que algo ha salido mal en el servidor, pero no te dice exactamente qué es.

Cuando tu tienda PrestaShop no carga y ves ese mensaje genérico, no significa que hayas perdido tus datos ni que tu tienda esté rota para siempre. Es un aviso de que el servidor no puede procesar la solicitud correctamente. La buena noticia es que, en la mayoría de los casos, puedes solucionar error 500 siguiendo una serie de pasos lógicos y ordenados.

A continuación, te explico cómo diagnosticar y arreglar este error paso a paso, tanto si usas cPanel como DirectAdmin o Syspanel (antes conocido como HestiaCP, cuyo acceso se realiza a través del puerto 2106).


Primeros pasos: prepara el entorno

Antes de tocar nada, es importante que sepas qué herramientas tienes a mano. Para arreglar el error 500, necesitarás acceso a dos cosas:

  1. El panel de control de tu hosting (cPanel, DirectAdmin o Syspanel).
  2. Un gestor de archivos (puede ser el del propio panel o un cliente FTP como FileZilla).

Además, te recomiendo que hagas una copia de seguridad de tu base de datos y de los archivos de configuración antes de hacer ningún cambio. Esto te dará tranquilidad por si algo sale mal.

[WARNING] Nunca modifiques archivos importantes sin tener una copia de seguridad reciente. Un pequeño error de sintaxis puede empeorar la situación.


Paso 1: Activa el modo de depuración (Debug Mode)

El error 500 es un mensaje muy genérico. Para saber qué está fallando, necesitas que PrestaShop te muestre el error real. Esto se hace activando el modo de depuración.

¿Cómo activar el modo debug?

Accede a tu panel de control y busca el Administrador de archivos (File Manager). Navega hasta la raíz de tu tienda (normalmente public_html o www). Busca el archivo llamado config/defines.inc.php.

Dentro de este archivo, busca esta línea:

define('_PS_MODE_DEV_', false);

Cámbiala por:

define('_PS_MODE_DEV_', true);

Guarda el archivo y recarga tu tienda. Ahora, en lugar del error 500, verás un mensaje mucho más descriptivo, como por ejemplo "Fatal error: Allowed memory size of X bytes exhausted". Ese mensaje te dará la pista clave.

[TIP] Anota el mensaje de error que aparece. Te servirá para saber exactamente qué sección del problema debes atacar. Si no ves nada, revisa el archivo var/logs/ de tu PrestaShop (o app/logs/ en versiones antiguas) para ver los logs recientes.

¿Qué hacer si no encuentras el archivo defines.inc.php?

A veces, el error 500 impide incluso que PrestaShop cargue su estructura. En ese caso, puedes activar el modo debug directamente desde el archivo .htaccess o desde un archivo PHP temporal. Pero no te preocupes, el paso 2 suele ser la solución más común.


Paso 2: Aumenta el límite de memoria PHP

El error 500 más frecuente en PrestaShop está relacionado con la memoria PHP. Si tu tienda tiene muchos módulos, productos o imágenes, el servidor puede quedarse sin memoria asignada.

Solución con cPanel

  1. Ve a la sección "Select PHP Version" o "MultiPHP Manager" (depende de la versión de cPanel).
  2. Haz clic en "Switch to PHP Options" o "Opciones".
  3. Busca la opción memory_limit y cámbiala a 512M (o al menos 256M).
  4. Guarda los cambios.

Solución con DirectAdmin

DirectAdmin suele tener una sección llamada "PHP Settings" o "Configuración PHP". Busca la pestaña de Custom Build (a veces está en "Extra Features"). Si tienes acceso a la configuración de PHP, cambia el memory_limit a 512M. Si no, tendrás que hacerlo manualmente (sigue el siguiente punto).

Solución manual para todos los paneles

Si no encuentras la opción gráfica, crea un archivo llamado php.ini en la raíz de tu tienda (public_html) y añade esta línea:

memory_limit = 512M

También puedes editar el archivo .htaccess y añadir esta línea al principio:

php_value memory_limit 512M

[WARNING] Si usas PHP-FPM o una versión de PHP con FastCGI, la línea de .htaccess puede no funcionar. En ese caso, usa el php.ini o la opción del panel.


Paso 3: Revisa los permisos de archivos y carpetas

Otra causa muy común del error 500 PrestaShop son los permisos incorrectos. Si los archivos tienen permisos demasiado restrictivos, el servidor no puede leerlos. Si son demasiado permisivos, puede dar error de seguridad.

¿Cómo solucionarlo?

Accede al Administrador de archivos de tu panel (cPanel, DirectAdmin o Syspanel). Selecciona todos los archivos y carpetas de tu tienda y cambia los permisos a:

  • Carpetas (directorios): 755
  • Archivos: 644

En cPanel, puedes hacerlo seleccionando todo y usando la opción "Change Permissions". En DirectAdmin y Syspanel también tienes una opción similar.

[INFO] Si no puedes cambiar los permisos de todos a la vez, hazlo al menos con las carpetas config, cache, log y img. A menudo, el problema está en el archivo config/settings.inc.php que debe tener permisos 644 (no 777).


Paso 4: Limpia la caché de PrestaShop

A veces, la caché de PrestaShop se corrompe y provoca el error 500. Limpiarla es un paso rápido y efectivo.

¿Cómo limpiar la caché manualmente?

  1. Con el Administrador de archivos, ve a la carpeta var/cache (en PrestaShop 1.7 y superiores) o cache (en versiones 1.6).
  2. Dentro, verás carpetas como dev o prod. Entra en la carpeta que corresponda a tu entorno (normalmente prod) y borra todos los archivos que haya dentro (no borres la carpeta en sí).
  3. También puedes borrar la carpeta cache/class_index.php si existe.

Si no puedes borrar los archivos desde el panel, usa un cliente FTP como FileZilla.

[TIP] Si tienes acceso a la base de datos vía phpMyAdmin, también puedes limpiar la caché ejecutando esta consulta SQL:

TRUNCATE TABLE ps_cache;

(Reemplaza ps_ con tu prefijo de base de datos si es diferente).


Paso 5: El archivo .htaccess está corrupto

El archivo .htaccess es un archivo de configuración muy importante para PrestaShop. Si está dañado o tiene una directiva incorrecta, puede causar el error 500.

¿Cómo comprobarlo y arreglarlo?

  1. Ve a la raíz de tu tienda y busca el archivo .htaccess. Si no lo ves, activa la opción "Mostrar archivos ocultos" en tu gestor de archivos.
  2. Renómbralo a .htaccess.bak (esto lo desactiva temporalmente).
  3. Recarga tu tienda. Si ahora funciona (aunque sea sin URLs amigables), el problema era ese archivo.

Para regenerarlo, ve al panel de administración de PrestaShop (si puedes acceder) a Parámetros avanzados > Rendimiento y haz clic en "Guardar" (esto regenera el .htaccess). Si no puedes acceder al panel, tendrás que esperar a que la tienda cargue (con el .htaccess desactivado) o crear uno básico.


Paso 6: Comprueba la compatibilidad de la versión de PHP

PrestaShop es muy sensible a la versión de PHP. Si tu hosting ha actualizado PHP a una versión muy reciente (como PHP 8.3) y tu PrestaShop es antiguo (1.6 o 1.7 temprana), es muy probable que aparezca el error 500.

Solución en cPanel y DirectAdmin

  • En cPanel: Ve a "Select PHP Version".
  • En DirectAdmin: Ve a "PHP Settings" o "Custom Build".

En ambos casos, cambia la versión de PHP a una más compatible. Para PrestaShop 1.7, te recomiendo PHP 7.4 o 8.0 como máximo. Para PrestaShop 1.6, usa PHP 5.6 o 7.1.

[WARNING] Cambiar la versión de PHP puede afectar a otros sitios web en tu cuenta de hosting. Asegúrate de cambiar solo la versión para el dominio de tu tienda, si es posible.

Solución en Syspanel (HestiaCP)

En Syspanel, ve a la sección de "Web" y selecciona tu dominio. Busca la opción de "PHP Version" y cámbiala a la recomendada. Recuerda que el acceso a Syspanel se realiza a través del puerto 2106.


Paso 7: Desactiva módulos o temas problemáticos

A veces, un módulo o un tema recién instalado es el culpable. Si el error empezó después de instalar algo, este es el paso clave.

¿Cómo desactivar módulos sin acceso al panel?

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

  1. Accede a phpMyAdmin desde tu panel de control.
  2. Selecciona la base de datos de tu tienda.
  3. Busca la tabla ps_module (el prefijo puede ser diferente).
  4. Ejecuta esta consulta SQL para desactivar todos los módulos:
    UPDATE ps_module SET active = 0;
    
  5. Recarga tu tienda. Si carga, el problema es un módulo. Ahora ve activándolos uno a uno desde el panel de administración para encontrar al culpable.

Paso 8: Revisa los logs del servidor

Si nada de lo anterior funciona, los logs del servidor te darán la respuesta definitiva. Son archivos donde se registran todos los errores.

¿Dónde encontrar los logs?

  • cPanel: Sección "Errores" o "Error Logs".
  • DirectAdmin: Sección "Logs" > "Error Logs".
  • Syspanel (HestiaCP): Sección "Logs" > "Error Logs" del dominio.

Busca la entrada con la hora exacta en que apareció el error 500. El mensaje suele ser críptico, pero te indicará el archivo y la línea exacta del problema.


Preguntas frecuentes (FAQ)

¿El error 500 significa que he perdido mis productos?

No, en absoluto. El error 500 es un fallo del servidor, no de tu base de datos. Tus productos, clientes y pedidos están a salvo en la base de datos. Solo necesitas arreglar la configuración o el archivo que está causando el problema.

¿Puedo solucionar el error 500 sin acceso al panel de control?

Es muy difícil, pero posible. Si tienes acceso FTP, puedes editar los archivos directamente. Si no tienes ni FTP ni panel, contacta con tu proveedor de hosting, ya que ellos podrán acceder a los logs y ayudarte.

¿Cuánto tiempo se tarda en arreglar?

Depende de la causa. Los pasos 2 y 3 (memoria y permisos) suelen resolver el 80% de los casos en menos de 10 minutos. Los pasos más complejos, como desactivar módulos, pueden llevar más tiempo.

¿Debo actualizar mi PrestaShop para evitar errores?

Sí, siempre es recomendable mantener PrestaShop, sus módulos y su tema actualizados. Las actualizaciones corrigen errores de compatibilidad con versiones nuevas de PHP y mejoran la seguridad.

¿Qué es Syspanel y por qué el puerto 2106?

Syspanel es el nombre actualizado del panel de control que antes se conocía como HestiaCP. Para acceder a él, debes escribir en tu navegador la dirección de tu servidor seguida de :2106 (por ejemplo: https://tu-servidor.com:2106). Es una alternativa moderna a cPanel y DirectAdmin, y los pasos para arreglar el error 500 son prácticamente los mismos.


Resumen final

Para solucionar error 500 en PrestaShop, sigue este orden lógico:

  1. Activa el modo debug para ver el error real.
  2. Aumenta la memoria PHP (a 256M o 512M).
  3. Revisa los permisos de archivos (755 carpetas, 644 archivos).
  4. Limpia la caché de PrestaShop.
  5. Renombra el .htaccess para probar si es el culpable.
  6. Cambia la versión de PHP a una compatible.
  7. Desactiva módulos desde la base de datos si es necesario.
  8. Consulta los logs del servidor para obtener la pista definitiva.

Con paciencia y estos pasos, tu tienda volverá a estar operativa. Recuerda que si en algún momento te sientes perdido, siempre puedes contactar con el soporte de tu hosting, ya que tienen acceso a herramientas más avanzadas. ¡No te rindas, que esto tiene solución!

¿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