Guía para solucionar el error 500 en PrestaShop con Plesk
¡Hola! Si estás leyendo esto, probablemente te has topado con el temido error 500 en PrestaShop mientras usas Plesk. No te preocupes, es un problema muy común y, en la mayoría de los casos, tiene una solución sencilla. Este error, también conocido como "Error interno del servidor", es una señal genérica de que algo no va bien en la configuración de tu tienda o del servidor.
En esta guía completa, vamos a desglosar paso a paso cómo solucionar error interno en tu PrestaShop alojado en Plesk. Te explicaré las causas más frecuentes y las soluciones prácticas, desde las más simples hasta las más técnicas. ¡Vamos a ello!
¿Qué es el error 500 en PrestaShop?
El error 500 es un código de estado HTTP que indica que el servidor encontró un problema inesperado y no puede completar la petición. En el contexto de PrestaShop, suele aparecer al intentar acceder al front office (la tienda) o al back office (el panel de administración). Puede manifestarse como una pantalla en blanco, un mensaje de error genérico o un texto como "500 Internal Server Error".
[INFO] A diferencia de otros errores (como el 404, que indica que la página no existe), el error 500 es un problema del servidor, no de la URL que escribiste.
Causas comunes del error 500 en PrestaShop con Plesk
Antes de lanzarnos a las soluciones, es útil entender qué puede estar provocando el problema. Las causas más habituales son:
- Problemas de permisos de archivos y carpetas: Los archivos de PrestaShop necesitan permisos específicos para ser leídos y ejecutados.
- Errores en el archivo
.htaccess: Este archivo de configuración, esencial para las URLs amigables y la seguridad, puede corromperse. - Módulos o temas incompatibles: Un módulo mal instalado o un tema con errores pueden provocar un fallo fatal.
- Límite de memoria PHP excedido: Si tu tienda tiene muchos productos o módulos, puede superar el límite de memoria asignado a PHP.
- Versiones de PHP incompatibles: PrestaShop requiere una versión específica de PHP. Usar una versión demasiado antigua o demasiado nueva puede causar errores.
- Problemas con la base de datos: Una tabla corrupta o una conexión fallida a la base de datos también pueden desencadenar el error 500.
- Archivos de configuración de PrestaShop dañados: Archivos como
config/settings.inc.phppueden tener errores.
Paso 1: Activar el modo debug de PrestaShop
El primer paso para solucionar error interno es obtener más información. El error 500 es muy genérico, pero PrestaShop tiene un modo de depuración (debug) que muestra el error real.
¿Cómo activar el modo debug?
-
Accede a tu panel de Plesk y ve a "Administrador de archivos" o usa un cliente FTP (como FileZilla).
-
Navega hasta la carpeta raíz de tu PrestaShop (normalmente
httpdocsopublic_html). -
Busca el archivo
config/defines.inc.php. -
Descarga una copia de seguridad de este archivo por si algo sale mal.
-
Edita el archivo
defines.inc.php. -
Busca la línea que dice:
define('_PS_MODE_DEV_', false); -
Cámbiala por:
define('_PS_MODE_DEV_', true); -
Guarda el archivo y súbelo de nuevo al servidor (si usaste el Administrador de archivos, simplemente guarda los cambios).
-
Ahora, recarga la página que te daba el error 500. En lugar de la pantalla en blanco, verás un mensaje de error detallado con información como:
- Fatal error: Descripción del error.
- File: Archivo donde ocurrió el error.
- Line: Línea exacta del error.
[WARNING] Una vez que hayas identificado y solucionado el problema, vuelve a cambiar el valor a
falseen el archivodefines.inc.php. Dejar el modo debug activado en tu tienda en producción es un riesgo de seguridad y puede mostrar información sensible a los visitantes.
Paso 2: Soluciones rápidas (sin tocar código)
Antes de meternos en archivos, prueba estas soluciones simples que resuelven la mayoría de los casos de error 500 PrestaShop.
1. Regenerar el archivo .htaccess
El archivo .htaccess se genera automáticamente. Si está corrupto, regenerarlo es muy fácil.
- Accede al back office de PrestaShop. Si no puedes acceder, salta al paso 2.
- Ve a Configuración de la tienda → Parámetros generales → SEO y URLs.
- Abajo del todo, verás la sección "Configurar URLs amigables".
- Haz clic en "Guardar" sin cambiar nada. Esto forzará a PrestaShop a regenerar el archivo
.htaccess.
Si no puedes acceder al back office, puedes hacerlo manualmente:
- Conéctate a Plesk y ve al Administrador de archivos.
- Localiza el archivo
.htaccessen la raíz de tu PrestaShop. - Renómbralo a
_htaccess_backup.txt(esto lo desactiva). - Intenta acceder a tu tienda. Si el error desaparece, el problema era el
.htaccess. - Para regenerarlo, entra al back office (ahora deberías poder) y sigue los pasos anteriores. Si no puedes, crea un archivo
.htaccessnuevo y vacío, o pide a tu hosting que lo genere.
2. Verificar los permisos de archivos y carpetas
Los permisos incorrectos son una causa muy común. En Plesk, puedes ajustarlos fácilmente.
- En el Administrador de archivos de Plesk, selecciona la carpeta raíz de tu PrestaShop.
- Haz clic en "Permisos" o "Cambiar permisos".
- Asegúrate de que los permisos sean los siguientes:
- Carpetas: 755 (rwxr-xr-x)
- Archivos: 644 (rw-r--r--)
- Archivos de configuración (como
config/settings.inc.php): 644 o incluso 444 en producción.
- Si tienes dudas, la opción más segura es aplicar 755 a todas las carpetas y 644 a todos los archivos. Plesk suele tener un botón para "Aplicar permisos recursivamente".
[TIP] No le des permisos 777 a ninguna carpeta o archivo a menos que sea estrictamente necesario y temporal. Es un grave riesgo de seguridad.
3. Aumentar el límite de memoria PHP
Si tu tienda se ha vuelto lenta o pesada, es posible que necesite más memoria.
- En Plesk, ve a "Configuración de PHP" (dentro de los ajustes de tu dominio).
- Busca la opción
memory_limit. - Auméntalo a 256M o incluso 512M si tu hosting lo permite.
- Guarda los cambios y prueba de nuevo.
Paso 3: Soluciones intermedias (desactivar módulos y temas)
Si las soluciones rápidas no funcionan, es probable que un módulo o tema esté causando el conflicto.
Identificar el módulo problemático
- Renombra la carpeta
modules: Conéctate por FTP o Administrador de archivos y renombra la carpetamodulesamodules_backup. - Crea una carpeta
modulesnueva y vacía. - Intenta acceder a tu tienda. Si el error desaparece, el problema está en uno de tus módulos.
- Para encontrar el módulo culpable: Ve moviendo los módulos de la carpeta
modules_backupa la nueva carpetamodules, de uno en uno, y probando la tienda después de cada movimiento. Cuando el error vuelva a aparecer, ¡ese es el módulo problemático!
Cambiar al tema predeterminado
- Renombra la carpeta de tu tema activo (normalmente en
/themes/). Por ejemplo, si tu tema se llamami-tema, renómbralo ami-tema_backup. - PrestaShop usará el tema predeterminado (
classicodefault-bootstrap). - Si el error desaparece, el problema es tu tema. Contacta al desarrollador o busca una actualización.
Paso 4: Soluciones avanzadas (archivos de configuración y base de datos)
Si nada de lo anterior funciona, toca revisar configuraciones más profundas.
1. Revisar el archivo config/settings.inc.php
Este archivo contiene la configuración de conexión a la base de datos.
- Localiza el archivo en
config/settings.inc.php. - Ábrelo y verifica que los datos sean correctos:
_DB_SERVER_(normalmentelocalhost)_DB_NAME_(nombre de la base de datos)_DB_USER_(usuario de la base de datos)_DB_PASSWD_(contraseña)
- Si tienes dudas, puedes obtener estos datos desde Plesk en la sección "Bases de datos".
- Si el archivo está dañado, restaura una copia de seguridad o contacta a tu soporte de hosting.
2. Reparar la base de datos
Una base de datos corrupta puede causar errores 500.
- En Plesk, ve a "Bases de datos" y selecciona la base de datos de tu PrestaShop.
- Busca la opción "phpMyAdmin" para acceder a la base de datos.
- En phpMyAdmin, selecciona todas las tablas (marca la casilla superior).
- En el menú desplegable "Con seleccionados:", elige "Reparar tabla".
- Esto intentará reparar cualquier tabla corrupta.
3. Verificar la versión de PHP
PrestaShop 1.6 funciona mejor con PHP 5.6 o 7.0, mientras que PrestaShop 1.7 y 8 necesitan PHP 7.1 o superior (recomendado PHP 7.4 o 8.0).
- En Plesk, ve a "Configuración de PHP".
- Cambia la versión de PHP a una compatible con tu versión de PrestaShop.
- Guarda los cambios y prueba.
[WARNING] Cambiar la versión de PHP puede romper módulos o temas antiguos. Asegúrate de que tu tienda sea compatible antes de hacer el cambio.
FAQ: Preguntas frecuentes sobre el error 500 en PrestaShop con Plesk
1. ¿Por qué aparece el error 500 después de actualizar un módulo?
- Es posible que el módulo actualizado no sea compatible con tu versión de PrestaShop o de PHP. Prueba a desactivar el módulo (renombrando su carpeta) o a revertir la actualización.
2. ¿El error 500 puede deberse a un ataque de seguridad?
- Sí, aunque no es lo más común. Un código malicioso puede dañar archivos de configuración. Si sospechas de un ataque, revisa los archivos en busca de código extraño y cambia todas las contraseñas.
3. ¿Qué hago si no puedo acceder ni al front ni al back office?
- Prueba las soluciones manuales: regenerar el
.htaccessrenombrándolo, desactivar módulos renombrando la carpetamodules, o cambiar el tema renombrando su carpeta. Todas estas acciones se hacen desde el Administrador de archivos de Plesk.
4. ¿Debo contactar a mi proveedor de hosting?
- Sí, si después de seguir todos los pasos el error persiste. Ellos pueden revisar los logs del servidor que no son accesibles para ti, como los errores de Apache o de PHP-FPM. Diles que has seguido esta guía y que el error persiste.
5. ¿El error 500 puede deberse a un problema de caché?
- Sí, aunque es menos común. Puedes limpiar la caché de PrestaShop manualmente borrando el contenido de la carpeta
/var/cache/(o/cache/en versiones antiguas) desde el Administrador de archivos.
Conclusión
El error 500 en PrestaShop con Plesk puede ser frustrante, pero con esta guía tienes un camino claro para solucionar error interno paso a paso. Recuerda siempre empezar por lo más simple (modo debug, regenerar .htaccess, permisos) y luego ir a soluciones más complejas (módulos, temas, base de datos).
La clave está en la paciencia y en ir probando cada solución de forma aislada para identificar la causa raíz. Si todo falla, tu proveedor de hosting es tu mejor aliado para revisar los logs del servidor.
Espero que esta guía te haya sido de gran ayuda. ¡Buena suerte con tu tienda!
