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

Errores 500 en PrestaShop: causas y soluciones

Actualizado el 23 de noviembre de 2025

¡Hola! Soy tu técnico de soporte amigable, y hoy vamos a desglosar uno de los problemas más temidos en las tiendas online: el temido error 500 en PrestaShop. No te preocupes, aunque parezca grave, la mayoría de las veces tiene solución y no implica que hayas perdido tus datos. Vamos a ver qué significa, por qué ocurre y, lo más importante, cómo solucionarlo paso a paso.

Imagina que el error 500 es como un “cortocircuito” en tu tienda. El servidor entiende tu petición, pero algo interno falla y no puede completarla. Es un error “genérico del servidor”, lo que significa que la causa puede estar en muchos sitios: desde un archivo de configuración dañado hasta un plugin (módulo) conflictivo. Pero no te asustes, porque con una guía clara y unos cuantos pasos podrás volver a tener tu tienda funcionando.

¿Qué es el error 500 en PrestaShop?

El error 500 PrestaShop es un código de estado HTTP que indica “Internal Server Error”. Es decir, el servidor web (Apache, Nginx, LiteSpeed, etc.) no puede procesar la solicitud debido a un problema interno. En PrestaShop, esto suele manifestarse con una pantalla blanca o un mensaje como “500 Internal Server Error”. A veces, también puede aparecer un mensaje más detallado si tienes activado el modo debug, pero por defecto solo verás la pantalla en blanco.

¿Por qué es tan común en PrestaShop? Porque PrestaShop es un sistema complejo que depende de muchos componentes: PHP, base de datos, módulos, temas, archivos de configuración (como .htaccess o settings.inc.php), permisos de archivos, memoria PHP, etc. Cualquier desajuste en uno de estos elementos puede provocar el error.

Causas principales del error 500 en PrestaShop

Vamos a ver las causas más frecuentes para que puedas identificarlas rápidamente. Recuerda que, al ser un error genérico, a veces la solución es más sencilla de lo que parece.

1. Archivos de configuración dañados o incorrectos

PrestaShop utiliza varios archivos de configuración clave:

  • settings.inc.php (en la carpeta /config/): contiene la conexión a la base de datos y otras configuraciones esenciales.
  • .htaccess (en la raíz): gestiona las reglas de reescritura de URL y redirecciones.
  • define.inc.php (en la carpeta /config/): define constantes de PrestaShop.

Si alguno de estos archivos está corrupto, mal escrito o tiene permisos incorrectos, el servidor no podrá cargar PrestaShop y lanzará un error 500.

2. Módulos o temas conflictivos

Los módulos (plugins) y temas de terceros son una de las causas más comunes. Al instalar o actualizar un módulo, puede que no sea compatible con tu versión de PrestaShop o que tenga un error de programación que rompa la tienda. Lo mismo ocurre con los temas: un tema mal codificado puede generar el error 500.

3. Límites de memoria PHP insuficientes

PrestaShop necesita una cantidad mínima de memoria PHP para funcionar. Si tu servidor tiene un límite bajo (por ejemplo, 64 MB o 128 MB), al cargar páginas con muchos productos, imágenes o módulos, el servidor se queda sin memoria y lanza el error 500. Esto es muy común en planes de hosting compartido básicos.

4. Permisos de archivos y carpetas incorrectos

Los archivos y carpetas de PrestaShop deben tener permisos específicos para que el servidor pueda leerlos y escribirlos. Si por error cambiaste los permisos (por ejemplo, al subir archivos por FTP) o tras una migración, el error 500 puede aparecer.

5. Problemas con la base de datos

Aunque menos frecuente, una tabla de la base de datos corrupta o una consulta SQL mal formada (por ejemplo, tras una actualización fallida) puede provocar el error. También puede deberse a que el usuario de la base de datos no tiene los permisos correctos.

6. Versiones incompatibles de PHP

PrestaShop requiere una versión específica de PHP. Si actualizaste PHP en tu servidor (por ejemplo, de 7.4 a 8.0 o 8.1) y tu tienda no es compatible, obtendrás el error 500. Lo mismo si tu hosting cambió la versión sin avisar.

7. Cache de PrestaShop corrupta

La caché de PrestaShop almacena archivos temporales para acelerar la carga. Si estos archivos se corrompen (por ejemplo, tras una actualización o un corte de energía), pueden provocar el error.

Cómo solucionar el error 500 en PrestaShop: Guía paso a paso

Ahora vamos a lo práctico. Sigue estos pasos en orden, del más simple al más complejo. No saltes pasos, ya que la solución puede estar en el primero.

Paso 1: Activar el modo debug de PrestaShop

El modo debug te permitirá ver el error real en lugar de la pantalla blanca. Así sabrás exactamente qué está fallando.

  1. Conéctate a tu servidor vía FTP o al panel de control de hosting (cPanel, Syspanel, etc.).
  2. Busca el archivo config/defines.inc.php en la raíz de tu PrestaShop.
  3. Ábrelo con un editor de texto (por ejemplo, Notepad++ o el editor del panel).
  4. Busca la 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.

[WARNING] No dejes el modo debug activado en una tienda en producción. Después de solucionar el error, vuelve a poner false.

Ahora recarga tu tienda. En lugar del error 500, verás un mensaje más detallado, como:

  • “Fatal error: Allowed memory size of X bytes exhausted” → problema de memoria.
  • “Fatal error: Uncaught Error: Class ‘NombreDelModulo’ not found” → módulo conflictivo.
  • “Parse error: syntax error, unexpected …” → error en un archivo PHP.

Paso 2: Aumentar el límite de memoria PHP

Si el error dice que se agotó la memoria, este es tu paso.

Opción A: Desde el panel de control (cPanel/Syspanel)

  • Accede a tu panel (si usas Syspanel, recuerda que el puerto es 2106).
  • Busca “Seleccionar versión de PHP” o “PHP Settings”.
  • Aumenta el límite de memoria a al menos 256 MB (o 512 MB si tu hosting lo permite).

Opción B: Editando el archivo .htaccess
Si no puedes desde el panel, añade estas líneas al final de tu archivo .htaccess (en la raíz de PrestaShop):

php_value memory_limit 256M
php_value max_execution_time 120

Opción C: Archivo php.ini
Si tu hosting te permite, crea o edita un archivo php.ini en la raíz y añade:

memory_limit = 256M
max_execution_time = 120

[TIP] Si no sabes cómo acceder a estos ajustes, contacta con tu proveedor de hosting. Muchas veces ellos pueden aumentarlo en segundos.

Paso 3: Desactivar módulos conflictivos (sin acceso al panel)

Si el error impide acceder al backoffice, puedes desactivar módulos manualmente.

  1. Conéctate por FTP a tu servidor.
  2. Ve a la carpeta /modules/.
  3. Busca la carpeta del módulo que sospechas que causa el problema (por ejemplo, si instalaste uno recientemente).
  4. Renombra la carpeta añadiendo “_backup” o “_old” al final. Por ejemplo, si el módulo se llama “superplugin”, renómbralo a “superplugin_backup”.
  5. Recarga tu tienda. Si el error desaparece, ese módulo era el culpable. Puedes eliminarlo o contactar al desarrollador.

Si no sabes cuál es, renombra módulos de uno en uno (empezando por los que instalaste recientemente) hasta que el error desaparezca.

Paso 4: Regenerar el archivo .htaccess

Un .htaccess corrupto es una causa muy común.

  1. Conéctate por FTP.
  2. Busca el archivo .htaccess en la raíz de PrestaShop (puede estar oculto; activa la opción “Mostrar archivos ocultos” en tu cliente FTP).
  3. Renómbralo a .htaccess_backup (o descárgalo como respaldo).
  4. Ahora, desde el backoffice de PrestaShop (si puedes acceder), ve a Configuración → Parámetros de la tienda → Tráfico y SEO y haz clic en Guardar (sin cambiar nada). Esto regenerará el .htaccess automáticamente.

Si no puedes acceder al backoffice, puedes crear un .htaccess básico manualmente. Copia y pega esto en un archivo de texto y súbelo como .htaccess en la raíz:

# START PrestaShop
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^tudominio.com$ [NC]
RewriteRule ^(.*)$ http://www.tudominio.com/$1 [L,R=301]
</IfModule>
# END PrestaShop

(Reemplaza “tudominio.com” por tu dominio real).

Paso 5: Verificar permisos de archivos y carpetas

Los permisos incorrectos pueden impedir que PrestaShop lea o escriba archivos.

  • Carpetas: deben tener permisos 755 (o 750 en algunos servidores).
  • Archivos: deben tener permisos 644 (o 640).

Puedes cambiarlos desde tu cliente FTP: selecciona todos los archivos y carpetas, haz clic derecho y elige “Permisos” o “CHMOD”. Establece 755 para carpetas y 644 para archivos.

[INFO] En algunos hosting, los permisos 777 son necesarios para carpetas como /cache/, /img/, /modules/, /themes/, /upload/, /download/ y /config/. Si después de poner 755 sigues teniendo error, prueba con 755 en esas carpetas específicas.

Paso 6: Comprobar la versión de PHP

Asegúrate de que tu versión de PHP sea compatible con tu PrestaShop.

  • PrestaShop 1.6: funciona con PHP 5.6 a 7.1 (recomendado 7.0).
  • PrestaShop 1.7: funciona con PHP 7.1 a 8.0 (recomendado 7.4).
  • PrestaShop 8: funciona con PHP 7.4 a 8.1 (recomendado 8.0).

Desde tu panel de control (cPanel o Syspanel), busca “Seleccionar versión de PHP” y cámbiala si es necesario. Si no sabes qué versión tienes, crea un archivo info.php en la raíz con el contenido <?php phpinfo(); ?> y ábrelo en el navegador.

Paso 7: Limpiar la caché de PrestaShop

La caché corrupta puede provocar el error. Puedes limpiarla manualmente:

  1. Conéctate por FTP.
  2. Ve a la carpeta /var/cache/ (en PrestaShop 1.7) o /cache/ (en PrestaShop 1.6).
  3. Elimina todo el contenido de las subcarpetas smarty/cache/ y smarty/compile/ (no borres las carpetas, solo los archivos de dentro).

Si no puedes acceder por FTP, desde el backoffice (si funciona) ve a Configuración avanzada → Rendimiento y haz clic en “Limpiar caché”.

Paso 8: Restaurar una copia de seguridad

Si nada de lo anterior funciona, es posible que tengas un problema más grave (como un archivo PHP dañado por una actualización fallida o un ataque). En ese caso, restaura una copia de seguridad reciente de tu tienda (archivos y base de datos). Si no tienes copia, contacta con tu hosting para ver si ellos tienen una.

Preguntas frecuentes (FAQ)

P: ¿El error 500 significa que perdí mis productos y clientes?
R: No, en absoluto. El error 500 es un problema del servidor, no de la base de datos. Tus datos (productos, clientes, pedidos) están seguros en la base de datos. Solo necesitas solucionar el problema técnico.

P: ¿Puedo evitar el error 500 en el futuro?
R: Sí, con buenas prácticas:

  • Mantén PrestaShop, módulos y temas actualizados.
  • Haz copias de seguridad periódicas.
  • No instales módulos de fuentes no confiables.
  • Aumenta los límites de memoria PHP antes de que sea necesario.
  • Prueba las actualizaciones en un entorno de desarrollo antes de aplicarlas en producción.

P: ¿Qué hago si después de todos los pasos el error persiste?
R: Contacta a tu proveedor de hosting. Puede ser un problema de configuración del servidor (por ejemplo, un módulo de Apache deshabilitado, un límite de archivos, o un firewall que bloquea algo). También puedes pedir ayuda en foros especializados de PrestaShop o contratar a un desarrollador.

P: ¿El error 500 puede deberse a un ataque?
R: Sí, aunque no es lo más común. Un ataque puede modificar archivos PHP o sobrecargar el servidor. Si sospechas de un ataque, cambia todas las contraseñas (FTP, base de datos, backoffice) y revisa los archivos en busca de código malicioso. Un buen plugin de seguridad (como un antivirus para PrestaShop) puede ayudar.

P: ¿Cómo accedo a Syspanel si mi hosting lo usa?
R: Syspanel (anteriormente conocido como HestiaCP) se accede normalmente a través de https://tudominio.com:2106 (el puerto es 2106). Desde allí puedes gestionar archivos, bases de datos, versiones de PHP y más.

Conclusión

El error 500 PrestaShop puede ser frustrante, pero como has visto, tiene múltiples soluciones que van desde ajustes simples (como aumentar la memoria) hasta acciones más técnicas (como desactivar módulos manualmente). La clave es mantener la calma y seguir los pasos de forma ordenada. Recuerda que activar el modo debug es tu mejor aliado para identificar la causa exacta.

Si después de todo esto el error persiste, no dudes en pedir ayuda profesional. A veces, un pequeño detalle en la configuración del servidor puede ser la causa, y un técnico experimentado lo resolverá en minutos.

Espero que esta guía te haya sido útil. ¡Tu tienda online volverá a funcionar en poco tiempo! Si tienes más dudas, recuerda que 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