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

Cómo solucionar el error 500 Internal Server en PrestaShop

Actualizado el 15 de octubre de 2025

¡Hola! Soy tu técnico de soporte amigable. Hoy vamos a desglosar paso a paso cómo solucionar el temido error 500 Internal Server en PrestaShop. Este es uno de los problemas más comunes cuando tu tienda online deja de funcionar de repente, pero no te preocupes: es completamente solucionable, incluso si no eres un experto en hosting.

Vamos a empezar desde lo más básico. Un error 500 es un mensaje genérico que indica que algo falló en el servidor, pero no te dice exactamente qué. Puede ser desde un archivo corrupto hasta un problema de memoria. Lo importante es que no entres en pánico. Sigue esta guía paso a paso y, en la mayoría de los casos, tu tienda volverá a la vida en pocos minutos.


¿Qué causa el error 500 en PrestaShop?

Antes de lanzarnos a las soluciones, es útil entender las causas más frecuentes:

  • Archivos .htaccess corruptos o mal configurados.
  • Problemas de permisos de archivos o carpetas.
  • Módulos o temas incompatibles o mal instalados.
  • Límites de memoria PHP excedidos (memoria insuficiente).
  • Versión de PHP incompatible con tu PrestaShop.
  • Errores en el archivo settings.inc.php (configuración de la base de datos).
  • Problemas con el certificado SSL o el servidor web.

Ahora, vamos a ver cómo diagnosticar y arreglar cada una de estas causas.


Paso 1: Activar el modo debug de PrestaShop (para ver el error real)

El error 500 es como una caja negra. Para abrirla, necesitas que PrestaShop te muestre el error real. Esto se hace activando el modo debug.

¿Cómo activarlo?

  1. Accede a tu servidor mediante FTP (FileZilla, por ejemplo) o al panel de control de hosting (cPanel, Syspanel, etc.).
  2. Busca el archivo config/defines.inc.php en la raíz de tu instalación de PrestaShop.
  3. Ábrelo con un editor de texto (Bloc de notas, Sublime Text, etc.).
  4. Busca esta línea:
    define('_PS_MODE_DEV_', false);
  5. Cámbiala a:
    define('_PS_MODE_DEV_', true);
  6. Guarda el archivo y súbelo de nuevo si lo editaste localmente.

[INFO] Al activar el modo debug, PrestaShop mostrará en pantalla el error real (por ejemplo, "Fatal error: Allowed memory size exhausted"). Esto te dará una pista exacta de qué está fallando. Si no ves nada, revisa que el archivo se haya subido correctamente.

Una vez que veas el error, podrás aplicar la solución específica. Si no ves nada, continúa con los siguientes pasos.


Paso 2: Solucionar el error 500 PrestaShop por archivos .htaccess

El archivo .htaccess es un archivo oculto que controla las reglas de reescritura de URL y redirecciones. A veces se corrompe o se genera mal.

Cómo arreglarlo:

  1. Conéctate por FTP y localiza el archivo .htaccess en la raíz de tu PrestaShop.
  2. Renómbralo a algo como .htaccess_old (esto lo desactiva temporalmente).
  3. Ve a tu tienda y recarga la página. Si el error 500 desaparece, el problema estaba ahí.
  4. Para regenerarlo correctamente:
    • Accede al Back Office de PrestaShop (si puedes) o a través de la URL /admin.
    • Ve a Configuración avanzada > Rendimiento.
    • Haz clic en "Guardar" sin cambiar nada. Esto fuerza a PrestaShop a regenerar el .htaccess.
  5. Si no puedes acceder al Back Office, puedes generar un .htaccess básico manualmente. Copia este código en un bloc de notas y súbelo como .htaccess:
# START: URL rewriting
<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^tudominio.com$
    RewriteRule . - [E=REWRITEBASE:/]
    RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]
    RewriteRule ^upload/.+\.php$ - [F]
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^(.*)$ %{ENV:REWRITEBASE}index.php [QSA,L]
</IfModule>
# END: URL rewriting

[WARNING] No copies y pegues este código sin adaptar. Si tu tienda está en una subcarpeta (ej: /tienda), deberás modificar REWRITEBASE. Si no estás seguro, mejor renombra el archivo y deja que PrestaShop lo regenere automáticamente.


Paso 3: Revisar los permisos de archivos y carpetas

Los permisos incorrectos son otra causa muy común del error interno servidor PrestaShop. Los archivos deben tener permisos 644 y las carpetas 755.

Cómo verificarlo:

  1. Conéctate por FTP.
  2. Selecciona toda la carpeta de tu tienda.
  3. Busca la opción "Permisos de archivos" o "Atributos" en tu cliente FTP.
  4. Aplica:
    • Carpetas: 755 (rwxr-xr-x)
    • Archivos: 644 (rw-r--r--)

[TIP] Si usas Syspanel (HestiaCP), puedes hacerlo desde el panel de archivos. Accede a tu panel en https://tudominio.com:2106, ve a Archivos y selecciona la carpeta de tu tienda. Allí podrás cambiar permisos de forma masiva.

Si después de cambiar los permisos el error persiste, pasa al siguiente paso.


Paso 4: Aumentar el límite de memoria PHP

PrestaShop puede consumir mucha memoria, sobre todo si tienes muchos módulos o productos. El error típico es: "Fatal error: Allowed memory size of X bytes exhausted".

Cómo aumentarlo:

  1. Busca el archivo php.ini en la raíz de tu hosting (si no existe, puedes crearlo).
  2. Añade o modifica esta línea:
    memory_limit = 256M
  3. Guarda y sube el archivo.

Si no tienes acceso al php.ini (hosting compartido), puedes intentar añadir esto al archivo .htaccess:

php_value memory_limit 256M

O si tu hosting lo permite, desde Syspanel puedes ir a Configuración avanzada > PHP y ajustar el límite de memoria directamente.

[INFO] Si tu hosting no te deja modificar estos valores, contacta con el soporte de tu proveedor y pídeles que aumenten el límite de memoria a 256MB como mínimo.


Paso 5: Desactivar módulos y temas problemáticos

A veces un módulo o tema recién instalado es el culpable. Si activaste el modo debug y ves un error que menciona un módulo específico, sabes por dónde ir.

Cómo desactivar módulos sin acceso al Back Office:

  1. Conéctate por FTP o al administrador de archivos de tu panel.
  2. Ve a la carpeta /modules.
  3. Renombra la carpeta del módulo sospechoso añadiendo un guion bajo al inicio (ej: _nombre_modulo).
  4. Recarga tu tienda. Si el error desaparece, ese módulo es el problema.

Para desactivar el tema actual:

  1. Ve a la carpeta /themes.
  2. Renombra la carpeta de tu tema activo (ej: _mi_tema).
  3. PrestaShop usará el tema por defecto (por ejemplo, "classic" en versiones recientes).

[WARNING] Si renombras la carpeta del tema y tu tienda sigue dando error, puede que el problema no sea el tema. Vuelve a ponerle el nombre original.


Paso 6: Revisar la versión de PHP

PrestaShop necesita una versión de PHP específica. Por ejemplo, PrestaShop 1.7 funciona mejor con PHP 7.1 a 7.4, mientras que PrestaShop 8 requiere PHP 8.0 o superior.

Cómo comprobarlo y cambiarlo:

  1. Accede al panel de control de tu hosting (cPanel, Syspanel, etc.).
  2. Busca la opción "Seleccionar versión de PHP" o "PHP Selector".
  3. Elige una versión compatible con tu PrestaShop (consulta la documentación oficial).
  4. Guarda los cambios.

[TIP] En Syspanel (HestiaCP), ve a Configuración avanzada > PHP y allí podrás cambiar la versión de PHP para tu dominio. Recuerda que el puerto de acceso a Syspanel es el 2106.

Después de cambiar la versión, limpia la caché de tu navegador y recarga la tienda.


Paso 7: Verificar la conexión a la base de datos

Un error en la configuración de la base de datos también puede causar un error 500. Esto suele ocurrir si cambiaste de hosting o contraseña.

Cómo revisarlo:

  1. Busca el archivo config/settings.inc.php (en PrestaShop 1.6) o config/db_server.php (en PrestaShop 1.7+).
  2. Ábrelo y verifica que los datos de la base de datos sean correctos:
    • define('_DB_SERVER_', 'localhost'); (o la IP del servidor)
    • define('_DB_NAME_', 'nombre_base');
    • define('_DB_USER_', 'usuario');
    • define('_DB_PASSWD_', 'contraseña');
  3. Si algo está mal, corrígelo.

[WARNING] Si no estás seguro de los datos, contacta con tu proveedor de hosting. Nunca adivines.


Paso 8: Limpiar la caché de PrestaShop

A veces la caché guarda archivos corruptos. Limpiarla puede resolver el error.

Cómo limpiarla manualmente:

  1. Conéctate por FTP.
  2. Elimina todo el contenido de la carpeta /var/cache (en PrestaShop 1.7+) o /cache (en versiones anteriores).
  3. Si no puedes acceder, desde el Back Office ve a Configuración avanzada > Rendimiento y haz clic en "Vaciar caché".

[TIP] Si no tienes acceso al Back Office, borrar las carpetas manualmente suele ser suficiente.


Paso 9: Revisar los logs del servidor

Si después de todo lo anterior el error persiste, toca mirar los logs del servidor. Allí se registran los errores detallados.

Cómo acceder a los logs:

  • En Syspanel (HestiaCP): Ve a Registros > Errores del servidor web (Apache o Nginx). Busca la fecha y hora del error.
  • En cPanel: Ve a Métricas > Errores.
  • Por FTP: Busca la carpeta /logs o /var/log dentro de tu hosting.

Busca líneas que contengan "PHP Fatal error" o "500 Internal Server Error". Te darán la pista definitiva.


Preguntas frecuentes (FAQ)

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

Puede ser un módulo específico que falla en ciertas condiciones, o un problema de caché. Sigue los pasos 1 y 5.

¿El error 500 puede deberse a un ataque?

Sí, aunque es menos común. Si sospechas de un ataque, revisa los logs y busca archivos extraños en la carpeta /modules o /upload.

¿Cómo evito que vuelva a aparecer?

Mantén PrestaShop, módulos y temas actualizados. Haz copias de seguridad regulares y evita instalar módulos de fuentes no confiables.

¿Qué hago si nada funciona?

Contacta con el soporte técnico de tu hosting. Diles que ya has probado los pasos básicos (modo debug, .htaccess, permisos, memoria) y pídeles que revisen los logs del servidor.


Resumen rápido

  1. Activa el modo debug para ver el error real.
  2. Renombra el .htaccess y regenera.
  3. Ajusta permisos a 644/755.
  4. Aumenta la memoria PHP a 256M.
  5. Desactiva módulos y temas sospechosos.
  6. Cambia la versión de PHP si es necesario.
  7. Verifica la base de datos en settings.inc.php.
  8. Limpia la caché manualmente.
  9. Revisa los logs del servidor.

Siguiendo esta guía, podrás solucionar el error 500 PrestaShop en la mayoría de los casos. Recuerda que la paciencia y el orden son clave. Si te surge alguna duda, no dudes en preguntar. ¡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