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

Solucionar error 500 en PrestaShop desde Plesk

Actualizado el 2 de septiembre de 2025

¿Qué es el temido error 500 en PrestaShop y por qué aparece en Plesk?

El error 500 en PrestaShop, también conocido como "Error interno del servidor", es uno de los problemas más frustrantes para cualquier administrador de tienda online. Aparece de repente, sin un mensaje claro, y puede dejar tu tienda completamente inaccesible. Si estás usando Plesk como panel de control, es muy probable que encuentres este error en algún momento. Pero no te preocupes: en esta guía completa te explicaré paso a paso cómo solucionar el error 500 en PrestaShop desde Plesk, incluso si no eres un experto técnico.

El error 500 puede tener muchas causas: desde un archivo .htaccess corrupto, hasta problemas de permisos, módulos incompatibles, límites de memoria excedidos o errores en la configuración de PHP. Lo bueno es que, con las herramientas que ofrece Plesk, puedes diagnosticar y resolver la mayoría de estos problemas sin necesidad de ser un desarrollador. Vamos paso a paso.


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

Antes de tocar nada, lo primero es saber exactamente qué está causando el error 500. PrestaShop tiene un modo de depuración (debug) que muestra el mensaje de error real en lugar de la pantalla blanca genérica. Para activarlo desde Plesk:

### 1.1. Accede al archivo config/defines.inc.php

  1. Entra a Plesk y ve a Archivos (File Manager) de tu dominio.
  2. Navega hasta la carpeta config de tu instalación de PrestaShop.
  3. Busca el archivo defines.inc.php y ábrelo con el editor de texto de Plesk.

### 1.2. Modifica la línea del modo debug

Dentro del archivo, busca esta línea (normalmente al principio):

define('_PS_MODE_DEV_', false);

Cámbiala por:

define('_PS_MODE_DEV_', true);

Importante: Guarda los cambios y recarga tu tienda. Ahora deberías ver un mensaje de error más descriptivo, como "Fatal error: Allowed memory size exhausted" o "Class not found". Anota ese mensaje, nos servirá más adelante.

[TIP] Si no ves el error después de esto, revisa que el archivo se haya guardado correctamente. A veces Plesk añade un salto de línea extra. Si el problema persiste, pasa al siguiente paso.

### 1.3. Una vez resuelto el error, vuelve a poner el modo debug en false

No olvides desactivar el modo debug cuando termines, ya que muestra información sensible de tu servidor. Simplemente vuelve a cambiar true por false.


Paso 2: Revisar los logs de error en Plesk

Si el modo debug no te da suficiente información, o si no puedes acceder al archivo defines.inc.php, los logs de error del servidor son tu mejor aliado. En Plesk puedes verlos fácilmente:

### 2.1. Accede a los logs desde el panel

  1. En Plesk, ve a Sitios web y dominios.
  2. Selecciona tu dominio y haz clic en Registros (Logs).
  3. Busca el archivo error_log (normalmente en la carpeta raíz o en /var/log/). También puedes usar el visor de logs integrado.

### 2.2. Interpreta las líneas de error

Busca las líneas que contengan [error] y que hagan referencia a PrestaShop. Por ejemplo:

  • PHP Fatal error: Allowed memory size of 134217728 bytes exhausted → Problema de memoria PHP.
  • PHP Parse error: syntax error, unexpected... → Error de sintaxis en algún archivo.
  • PHP Warning: require_once(...): failed to open stream → Archivo faltante o permisos incorrectos.

Copia el mensaje completo y búscalo en Google o en foros de PrestaShop. La mayoría de las veces, el log te dará la pista exacta.

[WARNING] No compartas los logs completos en público, ya que pueden contener rutas de archivos o información de configuración sensible. Solo usa las partes relevantes para buscar soluciones.


Paso 3: Solucionar el error 500 por problemas de .htaccess

Uno de los culpables más comunes del error 500 PrestaShop es un archivo .htaccess corrupto o mal generado. PrestaShop genera este archivo automáticamente, pero a veces se daña al activar o desactivar módulos, o al cambiar la URL amigable.

### 3.1. Renombra el .htaccess actual

  1. Ve al Administrador de archivos de Plesk.
  2. Busca el archivo .htaccess en la raíz de tu PrestaShop (normalmente en /httpdocs/ o /public_html/).
  3. Renómbralo a algo como .htaccess_backup (esto lo desactiva temporalmente).

### 3.2. Regenera el .htaccess desde el backoffice

  1. Accede a tu panel de administración de PrestaShop (si es que aún puedes).
  2. Ve a Configuración de la tienda → Parámetros generales → URL amigables.
  3. Desactiva y vuelve a activar la opción "URLs amigables". Esto forzará a PrestaShop a generar un nuevo .htaccess limpio.

Si no puedes acceder al backoffice, puedes generar un .htaccess básico manualmente. Copia este contenido en un nuevo archivo .htaccess en la raíz:

# START: configuración básica para 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

Guarda el archivo y prueba si tu tienda carga. Si funciona, ya sabes que el problema era el .htaccess anterior.

[INFO] Si después de esto sigues teniendo error 500, el problema no es el .htaccess. Pasa al siguiente paso.


Paso 4: Aumentar la memoria PHP y otros parámetros desde Plesk

El error 500 también puede deberse a límites de memoria PHP insuficientes, especialmente si tu tienda tiene muchos productos, módulos pesados o tráfico alto. En Plesk puedes ajustar estos parámetros fácilmente:

### 4.1. Cambia la configuración PHP desde el panel

  1. En Plesk, ve a Sitios web y dominios → selecciona tu dominio.
  2. Haz clic en Configuración de PHP (o "PHP Settings").
  3. Busca y modifica estos valores (recomendados para PrestaShop):
    • memory_limit: 256M o 512M (mínimo 128M).
    • max_execution_time: 300 (segundos).
    • upload_max_filesize: 64M (si subes productos con imágenes grandes).
    • post_max_size: 64M.
    • max_input_vars: 10000 (importante si tienes muchos módulos).

### 4.2. Guarda los cambios y reinicia el servicio PHP

Después de modificar, guarda los cambios. Plesk normalmente aplica los cambios automáticamente, pero si no, puedes reiniciar el servicio PHP desde Herramientas y configuraciones → Servicios → PHP-FPM (o Apache, según tu configuración).

[TIP] Si después de aumentar la memoria sigues viendo errores de memoria, revisa si algún módulo de PrestaShop está mal optimizado. Desactiva módulos uno por uno para identificar al culpable.


Paso 5: Verificar permisos de archivos y carpetas

Los permisos incorrectos son otra causa frecuente del error 500 en PrestaShop. En Plesk, puedes arreglarlos con unos pocos clics:

### 5.1. Permisos recomendados para PrestaShop

  • Carpetas: 755 (rwxr-xr-x)
  • Archivos: 644 (rw-r--r--)
  • Archivos de configuración (config/settings.inc.php): 644 o 444 (solo lectura)

### 5.2. Cómo cambiar permisos desde Plesk

  1. Ve al Administrador de archivos.
  2. Selecciona la carpeta raíz de PrestaShop.
  3. Haz clic en Permisos (o "Cambiar permisos").
  4. Aplica 755 para todas las carpetas y 644 para todos los archivos. Puedes marcar la opción "Aplicar a subdirectorios y archivos".

[WARNING] No pongas permisos 777 en ningún archivo o carpeta, ya que es un riesgo de seguridad. 755 y 644 son suficientes para que PrestaShop funcione correctamente.

Si después de esto el error persiste, probablemente el problema sea de otro tipo.


Paso 6: Desactivar módulos problemáticos desde la base de datos

A veces un módulo defectuoso causa el error 500, pero no puedes acceder al backoffice para desactivarlo. En ese caso, puedes desactivarlo directamente desde la base de datos usando phpMyAdmin (incluido en Plesk).

### 6.1. Accede a phpMyAdmin desde Plesk

  1. En Plesk, ve a Bases de datos → selecciona la base de datos de tu PrestaShop.
  2. Haz clic en phpMyAdmin (se abrirá en una nueva pestaña).

### 6.2. Desactiva todos los módulos no esenciales

  1. En phpMyAdmin, selecciona la base de datos de PrestaShop.
  2. Ejecuta esta consulta SQL:
UPDATE ps_module SET active = 0 WHERE id_module > 1;

(Esto desactiva todos los módulos excepto los esenciales. Si tu prefijo de tabla es diferente a ps_, ajústalo).

  1. Luego, ve a la tabla ps_module_shop y ejecuta:
UPDATE ps_module_shop SET active = 0 WHERE id_module > 1;
  1. Ahora intenta acceder a tu tienda. Si funciona, el problema era un módulo. Puedes ir reactivándolos uno por uno desde el backoffice para identificar al culpable.

[INFO] Si no estás seguro del prefijo de tus tablas, revisa el archivo config/settings.inc.php en la línea define('_DB_PREFIX_', 'ps_');.


Paso 7: Forzar la regeneración de la caché de PrestaShop

La caché corrupta también puede provocar errores 500. Puedes forzar su regeneración desde Plesk:

### 7.1. Elimina la carpeta de caché manualmente

  1. Ve al Administrador de archivos de Plesk.
  2. Navega a la carpeta var/cache/ dentro de tu PrestaShop.
  3. Elimina todo el contenido de las carpetas dev y prod (no las carpetas en sí, solo su contenido). Si no puedes eliminarlos, renómbralos a dev_old y prod_old.

### 7.2. Limpia la caché desde el backoffice (si puedes acceder)

Si logras entrar al backoffice, ve a Parámetros avanzados → Rendimiento y haz clic en Limpiar caché. Esto regenerará los archivos necesarios.

[TIP] Si después de limpiar la caché el error 500 sigue apareciendo, verifica que la carpeta var/cache tenga permisos 755.


Paso 8: Revisar la versión de PHP y de PrestaShop

La incompatibilidad de versiones es otra causa común. PrestaShop 1.6 requiere PHP 5.6 o 7.0, mientras que PrestaShop 1.7 necesita PHP 7.1 o superior (idealmente 7.3 o 7.4). Si tu servidor tiene PHP 8.0 o superior, es posible que algunos módulos o el propio núcleo fallen.

### 8.1. Cambia la versión de PHP en Plesk

  1. En Sitios web y dominios → selecciona tu dominio.
  2. Haz clic en Configuración de PHP.
  3. En la parte superior, selecciona la versión de PHP recomendada para tu PrestaShop (por ejemplo, 7.4 para PS 1.7).
  4. Guarda los cambios.

### 8.2. Actualiza PrestaShop si es necesario

Si tu versión de PrestaShop es muy antigua, considera actualizarla. Aunque esto puede ser un proceso delicado, a veces es la única solución definitiva para errores 500 persistentes.

[WARNING] Antes de cambiar la versión de PHP, asegúrate de que tu PrestaShop y todos los módulos sean compatibles. Haz una copia de seguridad completa primero.


Paso 9: Verificar el archivo settings.inc.php

El archivo config/settings.inc.php contiene la configuración de la base de datos y otros parámetros críticos. Si está dañado, el error 500 es casi seguro.

### 9.1. Revisa su contenido desde Plesk

  1. Abre el archivo config/settings.inc.php en el editor de Plesk.
  2. Verifica que las líneas de conexión a la base de datos sean correctas:
    • _DB_SERVER_ (normalmente localhost)
    • _DB_NAME_
    • _DB_USER_
    • _DB_PASSWD_
  3. Si alguna línea está vacía o tiene caracteres extraños, corrígela con los datos correctos de tu base de datos (puedes encontrarlos en la sección Bases de datos de Plesk).

### 9.2. Si está corrupto, restaura desde una copia de seguridad

Si el archivo está tan dañado que no se puede reparar, restaura una copia de seguridad reciente del mismo. Si no tienes, puedes crear uno nuevo desde cero, pero necesitarás los datos exactos de la base de datos.

[INFO] El archivo settings.inc.php debe tener permisos 644. Si está en 444, cámbialo a 644 temporalmente para editarlo, y luego vuélvelo a 444 por seguridad.


Paso 10: Habilitar el modo de mantenimiento y buscar ayuda profesional

Si después de todos estos pasos el error 500 persiste, es momento de habilitar el modo mantenimiento para que tus clientes no vean el error, y buscar ayuda especializada.

### 10.1. Activar modo mantenimiento desde Plesk

Puedes hacerlo editando el archivo config/defines.inc.php (como vimos al principio) y añadiendo:

define('_PS_MAINTENANCE_MODE_', true);

O bien, si tienes acceso al backoffice, ve a Parámetros de la tienda → Mantenimiento y actívalo.

### 10.2. Contacta a soporte técnico

Si no logras resolverlo, contacta al soporte de tu hosting o a un desarrollador especializado en PrestaShop. A veces el error 500 puede deberse a problemas en el servidor (como falta de memoria RAM, configuración de Apache o problemas con PHP-FPM) que están fuera del alcance de esta guía.

[TIP] Antes de pedir ayuda, ten a mano los logs de error y los pasos que ya has intentado. Esto acelerará mucho la solución.


Preguntas frecuentes (FAQ) sobre el error 500 en PrestaShop con Plesk

¿Por qué aparece el error 500 después de instalar un módulo?

Los módulos incompatibles o mal codificados pueden causar conflictos con el núcleo de PrestaShop o con otros módulos. La solución más rápida es desactivar el módulo desde la base de datos (como explicamos en el paso 6) o eliminar sus archivos manualmente.

¿El error 500 puede deberse a un problema de hosting?

Sí. Si tu servidor tiene poca memoria RAM, límites muy bajos de PHP o problemas con el servicio de Apache/Nginx, puede generar errores 500. En ese caso, contacta a tu proveedor de hosting o considera migrar a un plan superior.

¿Cómo puedo prevenir el error 500 en el futuro?

  • Mantén PrestaShop y todos los módulos actualizados.
  • Haz copias de seguridad periódicas (Plesk tiene una herramienta para ello).
  • No instales módulos de fuentes no confiables.
  • Monitorea los logs de error regularmente.
  • Aumenta los límites de PHP si tu tienda crece.

¿Puedo

¿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