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

Cómo solucionar el error '500 Internal Server Error' en PrestaShop (Plesk y cPanel)

Actualizado el 24 de noviembre de 2025

¡Hola! Si estás leyendo esto, es muy probable que estés viendo una pantalla en blanco o un mensaje de error 500 en tu tienda PrestaShop. No te preocupes, es uno de los problemas más comunes en el mundo del hosting y, aunque parece grave, tiene solución.

En esta guía extensa y paso a paso, vamos a desglosar cómo solucionar el error 500 en PrestaShop, tanto si tu tienda está alojada en un panel de control Plesk como en cPanel. El error 500 es un "error genérico del servidor", lo que significa que algo falla en el servidor pero no te dice exactamente qué es. Pero tranquilo, vamos a ir por partes para encontrarlo.

Vamos a arrancar la motosierra y ponernos el mono de trabajo, pero con calma, porque la mayoría de las soluciones son más sencillas de lo que parecen.

¿Por qué aparece el error 500 en PrestaShop?

Antes de lanzarnos a editar archivos, es fundamental entender qué está pasando. El error 500 prestashop suele estar causado por uno de estos tres factores principales:

  1. Archivos con permisos incorrectos: Los archivos de tu tienda tienen dueños y permisos. Si un archivo tiene demasiados permisos (por ejemplo, 777) o demasiados pocos, el servidor se bloquea.
  2. Errores de PHP: Un módulo desactualizado, un override (sobrescritura) mal configurado o un simple error de sintaxis en un archivo pueden provocar que el servidor falle.
  3. Archivo .htaccess corrupto: Este archivo es como el "directorio de tráfico" de tu tienda. Si está dañado o tiene reglas incompatibles, el servidor no sabe cómo responder y lanza el error.

Vamos a atacar cada uno de estos puntos. El orden es importante, así que te recomiendo seguirlo tal cual.


Solución 1: El famoso archivo .htaccess (La solución rápida)

Este es el primer paso y el que soluciona el problema en un 40% de los casos. El archivo .htaccess se encuentra en la raíz de tu instalación de PrestaShop. A veces se corrompe al instalar un módulo o al cambiar la configuración de la URL amigable.

Para Plesk:

  1. Accede a tu panel de Plesk.
  2. Ve a Sitios web y dominios y haz clic en tu dominio.
  3. Busca la sección Administrador de archivos (o "File Manager").
  4. Navega hasta la carpeta httpdocs (o la carpeta donde esté instalada tu tienda).
  5. Busca el archivo llamado .htaccess. OJO: Los archivos que empiezan con un punto están ocultos. Deberías ver un botón llamado "Configuración" o un icono de engranaje para "Mostrar archivos ocultos".
  6. Una vez lo veas, haz clic derecho sobre él y selecciona Cambiar nombre (o Rename). Cámbialo a htaccess.bak. Esto lo "desactiva" sin borrarlo.
  7. Ve a tu tienda. Si ya carga, el problema era ese. Si no, continúa con el siguiente paso.

Para cPanel:

  1. Accede a cPanel.
  2. Busca la herramienta Administrador de archivos (File Manager).
  3. Entra en la carpeta public_html (o la carpeta raíz de tu dominio).
  4. Haz clic en el icono de Configuración (arriba a la derecha) y marca la casilla Mostrar archivos ocultos (dotfiles). Luego, haz clic en Guardar.
  5. Ahora verás el archivo .htaccess. Haz clic derecho sobre él y selecciona Cambiar nombre. Ponle htaccess.bak.
  6. Recarga tu web.

[INFO] Si al renombrar el archivo tu tienda vuelve a funcionar, simplemente ve a la configuración de PrestaShop (Parámetros avanzados > Rendimiento) y haz clic en "Guardar" para regenerar un .htaccess limpio y nuevo.


Solución 2: Aumentar el límite de memoria PHP

El error 500 prestashop también es muy habitual cuando tu tienda se queda sin memoria. PrestaShop es una plataforma "gorda" y necesita recursos. Si tu hosting tiene un límite bajo, explota.

Para Plesk:

  1. En Plesk, ve a Sitios web y dominios.
  2. Haz clic en Configuración de PHP (o "PHP Settings").
  3. Busca la opción memory_limit (Límite de memoria).
  4. Cámbialo a 256M o 512M. Si no ves un menú desplegable, puedes escribir el valor manualmente.
  5. Guarda los cambios.

Para cPanel:

  1. En cPanel, busca la sección Software y haz clic en Seleccionar versión de PHP (o "MultiPHP Manager").
  2. Asegúrate de que tu dominio tiene seleccionada una versión de PHP 7.4 o superior (PrestaShop 1.7 necesita PHP 7.x).
  3. Ahora, busca MultiPHP INI Editor.
  4. Selecciona tu dominio en el menú desplegable.
  5. Busca el campo memory_limit y cámbialo a 256M o 512M.
  6. Haz clic en Aplicar o Guardar.

[WARNING] Si no encuentras estas opciones, contacta con tu proveedor de hosting. Algunos planes "económicos" tienen el límite de memoria bloqueado. Si es así, a veces es hora de actualizar de plan.


Solución 3: Revisar los permisos de archivos y carpetas

Los permisos son como las llaves de tu casa. Si las llaves no coinciden con la cerradura, no puedes entrar. En el servidor pasa igual. Los permisos correctos para PrestaShop son:

  • Carpetas (Directorios): Deben tener permisos 755.
  • Archivos: Deben tener permisos 644.

A veces, al subir archivos por FTP o al descomprimir un backup, estos permisos se cambian a 777 (demasiado abiertos) o 600 (demasiado cerrados), y el servidor responde con el error 500.

Para Plesk:

  1. Entra en el Administrador de archivos de tu dominio (httpdocs).
  2. Selecciona todas las carpetas y archivos (Ctrl+A o Cmd+A).
  3. Haz clic en el botón Configuración de permisos (suele ser un icono de candado o de llave).
  4. En la ventana emergente, marca la casilla de Recursivo (aplicar a subcarpetas).
  5. Pon los permisos en 755 para carpetas y 644 para archivos. Si no te deja diferenciarlos, pon 755 para todo y luego ajusta los archivos individualmente si es necesario.

Para cPanel:

  1. Entra en el Administrador de archivos.
  2. Entra en public_html.
  3. Haz clic en Seleccionar todo (o Ctrl+A).
  4. Haz clic en el botón Permisos (arriba).
  5. Marca los cuadros para 755 (si es una carpeta) o 644 (si es un archivo).
  6. Marca la casilla Cambiar los archivos y subdirectorios incluidos (Recursivo).
  7. Haz clic en Guardar.

[WARNING] No uses permisos 777 en archivos de producción. Es un agujero de seguridad enorme. Si el 755 y 644 no solucionan el error, el problema no son los permisos; revierte a los valores seguros.


Solución 4: Activar el modo depuración (Debug Mode)

Esta es la clave del misterio. El error 500 es mudo, pero PrestaShop tiene un "modo detective". Vamos a activarlo para que nos diga exactamente qué archivo está fallando.

Para Plesk y cPanel (Método manual con FTP):

Este es el método más fiable, ya que no depende de la base de datos, que a veces también falla.

  1. Conéctate a tu hosting por FTP (FileZilla, por ejemplo).
  2. Navega hasta la carpeta raíz de tu tienda (donde están las carpetas admin, config, src, etc.).
  3. Busca el archivo llamado config/defines.inc.php.
  4. Descárgalo a tu ordenador y ábrelo con un editor de texto (Bloc de notas, Sublime Text, etc.).
  5. Busca esta línea:
    define('_PS_MODE_DEV_', false);
  6. Cámbiala por:
    define('_PS_MODE_DEV_', true);
  7. Guarda el archivo y súbelo de nuevo a tu servidor (sobrescribiendo el original).
  8. Ahora, recarga tu tienda. En lugar del error 500, verás un mensaje de error en inglés con detalles técnicos. Anota lo que pone, especialmente la ruta del archivo que falla.

[TIP] Si ves un error que menciona cache o class_index.php, no te asustes. Simplemente ve a la carpeta var/cache (o cache si es PrestaShop 1.6) y borra todo el contenido dentro de prod y dev. Eso suele arreglar muchos problemas.


Solución 5: Desactivar módulos conflictivos (El culpable más común)

Si el modo depuración te muestra un error que menciona un módulo específico, ya lo tienes. Pero si no lo menciona, el problema puede ser un módulo que se ejecuta en todas las páginas.

Para Plesk y cPanel (Método manual):

  1. Accede a tu base de datos MySQL (phpMyAdmin desde Plesk o cPanel).
  2. Busca la tabla ps_module (el prefijo ps_ puede variar).
  3. No borres nada. Ve a la tabla ps_module_shop o ps_module y busca la columna active.
  4. Para desactivar todos los módulos de golpe, ejecuta esta consulta SQL (en la pestaña "SQL" de phpMyAdmin):
    UPDATE ps_module SET active = 0 WHERE active = 1;
    
  5. Ahora ve a tu tienda. Si vuelve a funcionar, el problema es un módulo.
  6. Vuelve a phpMyAdmin y reactiva los módulos uno a uno (o en grupos) con esta consulta, cambiando el id_module:
    UPDATE ps_module SET active = 1 WHERE id_module = 1;
    
    (Repite el paso 6 cambiando el número hasta encontrar el que rompe todo).

[INFO] Esta técnica es un poco "bruta", pero es infalible. Si no te sientes cómodo con SQL, puedes hacerlo desde el panel de administración de PrestaShop, pero si el error 500 te bloquea el acceso al panel, este es el único camino.


Solución 6: Limpiar la caché de PrestaShop

A veces, una caché corrupta es la culpable. PrestaShop guarda archivos temporales que a veces se dañan.

Método manual (FTP):

  1. Conéctate por FTP.
  2. Navega a la carpeta var/cache (en PrestaShop 1.7) o cache (en 1.6).
  3. Dentro de var/cache, encontrarás carpetas llamadas dev y prod. Borra todo el contenido de ambas carpetas (los archivos dentro, no las carpetas en sí).
  4. Ve a tu tienda. Si no funciona, también puedes intentar borrar el contenido de la carpeta cache/smarty/compile (si existe).

Solución 7: El error en HestiaCP (Syspanel)

Si tu hosting usa Syspanel (anteriormente conocido como HestiaCP), el proceso es muy similar a los anteriores, pero con una pequeña diferencia.

[TIP] Recuerda que el panel de control Syspanel se accede a través del puerto 2106 (ejemplo: https://tu-dominio:2106).

En Syspanel, los pasos son:

  1. Accede al Administrador de archivos desde el panel.
  2. La raíz de tu web suele estar en web/tu-dominio/public_html.
  3. Sigue los mismos pasos que para cPanel: renombrar .htaccess, ajustar permisos a 755 y 644, y activar el modo depuración editando config/defines.inc.php.
  4. Para cambiar la memoria PHP, ve a Web > PHP-FPM y ajusta el memory_limit.

Preguntas Frecuentes (FAQ)

Aquí te dejo las dudas más comunes que me suelen llegar sobre este tema.

¿Puedo perder mis productos si borro el .htaccess?

No. El .htaccess solo contiene reglas de reescritura de URL y seguridad. No toca tu base de datos ni tus productos. Es un archivo de configuración, no de datos.

¿Por qué sigo viendo el error 500 si he hecho todos los pasos?

Si has llegado hasta aquí sin éxito, el problema puede estar en el servidor en sí (no en tu web). Puede ser que el servidor esté sobrecargado, que hayas superado el límite de uso de CPU o que el proveedor haya hecho algún cambio. En este caso, la solución es contactar con el soporte técnico de tu hosting y enviarles una captura de pantalla del error que te muestra el modo depuración (Solución 4).

¿El error 500 afecta al SEO?

Sí, si el error dura mucho tiempo. Google intenta rastrear tu web y si responde con un error 500, puede penalizarte temporalmente en los resultados de búsqueda. Por eso es tan importante solucionarlo rápido. Una vez resuelto, Google volverá a rastrear sin problemas.

¿Debo actualizar PrestaShop para solucionarlo?

A veces, el error 500 es causado por incompatibilidades entre la versión de PrestaShop y la versión de PHP del servidor. Si tu PrestaShop es muy antiguo (1.6) y tu hosting ha actualizado a PHP 8.0, es casi seguro que tendrás errores. La solución a largo plazo es actualizar PrestaShop, pero para una solución rápida, puedes cambiar la versión de PHP del dominio a una más baja (por ejemplo, PHP 7.2) desde el panel de Plesk o cPanel.

¿Qué hago si no tengo acceso al administrador de archivos?

Si no tienes acceso al administrador de archivos ni a FTP, solo te queda el soporte del hosting. Llámales y diles que necesitas que revisen el error_log de tu dominio. Ese archivo contiene el error exacto y te lo pueden leer por teléfono.


Resumen final

El error 500 prestashop es frustrante, pero rara vez es un problema sin solución. Siguiendo este orden, tienes un 90% de posibilidades de arreglarlo tú mismo en menos de 30 minutos:

  1. Renombra el .htaccess (Solución 1).
  2. Aumenta la memoria PHP (Solución 2).
  3. Activa el modo depuración (Solución 4) para ver el error real.
  4. Limpia la caché (Solución 6) y revisa los permisos (Solución 3).

Espero que esta guía te haya sido de gran ayuda. Si has llegado hasta aquí y lo has solucionado, ¡enhorabuena! Si no, no dudes en dejar un comentario o contactar con tu proveedor, pero ahora tendrás el conocimiento técnico para explicarles exactamente qué has probado y qué te dice el error, lo cual acelerará mucho el proceso de soporte.

¡Mucha 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