Solucionar el error 500 en PrestaShop alojado en Plesk
¡Hola! Soy el técnico de soporte amigable de tu equipo de Hosting. Hoy vamos a desglosar paso a paso cómo solucionar uno de los errores más temidos en el mundo de las tiendas online: el error 500 en PrestaShop. Si tu tienda está alojada en un servidor con Plesk, no te preocupes, que aquà estoy para guiarte.
Este error, conocido técnicamente como "Error interno del servidor", es como un dolor de cabeza que no te deja trabajar. Pero, ¿sabes qué? La mayorÃa de las veces tiene una solución sencilla que tú mismo puedes aplicar, sin necesidad de ser un experto en programación.
Vamos a empezar con lo básico y luego iremos a lo más técnico. Recuerda: no borres nada sin antes hacer una copia de seguridad de tu tienda y base de datos. ¡Allá vamos!
¿Qué es exactamente el error 500 en PrestaShop?
El error 500 PrestaShop es un mensaje genérico que indica que algo salió mal en el servidor, pero el sistema no puede darte más detalles por razones de seguridad. Es como si tu coche se parara en medio de la carretera y el tablero solo mostrara "Fallo general". No sabes si es el motor, la baterÃa o el combustible.
En el contexto de Plesk PrestaShop error, las causas más comunes suelen ser:
- Problemas de permisos de archivos: El servidor no puede leer o escribir en ciertos archivos.
- Módulos o temas incompatibles: Una actualización reciente o un plugin mal configurado.
- Archivos .htaccess corruptos: Un archivo de configuración esencial que se ha dañado.
- LÃmite de memoria PHP agotado: Tu tienda necesita más memoria de la que tiene asignada.
- Errores en el archivo settings.inc.php: La configuración de conexión a la base de datos está mal.
Primeros pasos: El diagnóstico básico
Antes de meternos en faena, necesitamos saber qué está pasando exactamente. No podemos arreglar algo que no entendemos.
1. Activar el modo debug de PrestaShop
El modo debug es como poner una lupa sobre el error. Te mostrará el mensaje de error real en lugar del genérico "Error 500". Sigue estos pasos:
- Accede a tu servidor Plesk. Normalmente a través de
https://tudominio.com:8443o la URL que te haya proporcionado tu proveedor de hosting. - Ve a Archivos > Administrador de archivos.
- Navega hasta la carpeta raÃz de tu tienda PrestaShop (normalmente
httpdocsopublic_html). - Busca el archivo
config/defines.inc.php. - Haz clic derecho sobre él y selecciona Editar.
- Busca la lÃnea que dice:
define('_PS_MODE_DEV_', false); - Cámbiala por:
define('_PS_MODE_DEV_', true); - Guarda el archivo.
[WARNING] Al activar el modo debug, tu tienda mostrará errores técnicos a los visitantes. No lo dejes activo para siempre. Solo úsalo para diagnosticar y luego vuelve a ponerlo en
false.
2. Interpretar el mensaje de error
Una vez activado el modo debug, recarga la página que daba el error. Ahora verás un mensaje mucho más descriptivo, como por ejemplo:
- "Fatal error: Allowed memory size of X bytes exhausted" -> Problema de memoria PHP.
- "Fatal error: Uncaught Error: Class 'X' not found" -> Un módulo o tema está roto.
- "Parse error: syntax error, unexpected..." -> Error en un archivo PHP, a menudo por una mala edición.
Anota ese mensaje. Te servirá para saber por dónde tirar.
Soluciones paso a paso para el error 500 en Plesk
Ahora que sabemos qué tipo de error es, vamos a las soluciones. Las he ordenado de la más fácil a la más compleja.
Solución 1: Limpiar la caché de PrestaShop (La más rápida)
A veces, una caché corrupta es la culpable. En Plesk, puedes hacerlo de dos maneras:
VÃa FTP/Administrador de archivos:
- Conéctate a tu servidor.
- Ve a la carpeta raÃz de PrestaShop.
- Borra la carpeta
var/cache(ocacheen versiones antiguas). - Vuelve a cargar tu tienda.
VÃa phpMyAdmin (si no tienes acceso a archivos):
- En Plesk, ve a Bases de datos > phpMyAdmin.
- Selecciona la base de datos de tu tienda.
- Busca la tabla
ps_cache(ops_cache_locks). - Haz clic en Vaciar (TRUNCATE) para eliminar su contenido.
- Vuelve a tu tienda.
[TIP] Si no sabes qué tabla es, en la barra de búsqueda de phpMyAdmin escribe
cachey te mostrará las relacionadas.
Solución 2: Verificar y reparar el archivo .htaccess
Un archivo .htaccess dañado es una causa muy común del Plesk PrestaShop error.
- En el Administrador de archivos de Plesk, asegúrate de ver los archivos ocultos. Busca un botón o checkbox que diga "Mostrar archivos ocultos" (los que empiezan con un punto).
- Localiza el archivo
.htaccessen la raÃz de tu tienda. - Renómbralo a
.htaccess_old(esto lo desactiva). - Recarga tu tienda. Si funciona, el problema estaba ahÃ.
- Regenera el .htaccess desde el back office de PrestaShop: ve a Configuración > Tráfico y SEO > URLs amigables y haz clic en Guardar (sin cambiar nada). Esto creará uno nuevo.
Solución 3: Aumentar el lÃmite de memoria PHP
Si el error decÃa algo de "memory size exhausted", necesitas darle más memoria a PHP.
En Plesk, se hace desde el panel de control:
- Ve a Configuración de PHP (o PHP Settings) dentro de la suscripción de tu dominio.
- Busca la opción
memory_limit. - Auméntalo a un valor como 256M o 512M. No pongas valores demasiado altos (1GB) porque podrÃas saturar el servidor.
- Haz clic en Aplicar.
- Recarga la tienda.
Solución 4: Deshabilitar módulos problemáticos (sin acceso al back office)
A veces un módulo recién instalado o actualizado rompe todo. Como no puedes entrar al back office, lo haremos desde la base de datos.
- Ve a phpMyAdmin en Plesk.
- Selecciona la base de datos de tu tienda.
- Busca la tabla
ps_module(otabla_prefijo_module). - Busca el módulo que crees que causa el problema (por nombre) o, si no sabes, puedes deshabilitar todos los módulos no nativos:
- Ejecuta la siguiente consulta SQL (cambiando
ps_por tu prefijo si es diferente):UPDATE ps_module SET active = 0 WHERE id_module > 0; - ¡CUIDADO! Esto desactivará TODOS los módulos. Luego, desde el back office, puedes ir activándolos uno a uno para encontrar el culpable.
- Ejecuta la siguiente consulta SQL (cambiando
Solución 5: Verificar permisos de archivos y carpetas
Los permisos incorrectos son otro clásico. Plesk suele gestionarlos bien, pero a veces una mala actualización los cambia.
- En el Administrador de archivos de Plesk, ve a la raÃz de tu tienda.
- Selecciona todas las carpetas y archivos (puedes usar Ctrl+E o el botón de seleccionar todo).
- Haz clic en Permisos (o Change Permissions).
- Aplica los siguientes valores:
- Carpetas: 755
- Archivos: 644
- Archivos especiales (settings.inc.php, .htaccess): 644 o 444 (solo lectura).
- Marca la opción "Aplicar a subdirectorios y archivos" (Recursive).
- Aplica los cambios.
[INFO] Si usas Syspanel (antes conocido como HestiaCP, recuerda que el puerto es el 2106), el proceso es similar, pero la interfaz es diferente. Busca la opción "Permisos" en el gestor de archivos.
Solución 6: Revisar el archivo settings.inc.php (Conexión a la base de datos)
Este archivo contiene los datos de conexión a tu base de datos. Si está dañado o tiene datos incorrectos, tu tienda no funcionará.
- En la raÃz de tu tienda, busca la carpeta
config/. - Abre el archivo
settings.inc.php. - Verifica que los datos de la base de datos sean correctos:
define('_DB_SERVER_', 'localhost'); // Normalmente es localhost define('_DB_NAME_', 'nombre_de_tu_bd'); define('_DB_USER_', 'usuario_de_tu_bd'); define('_DB_PASSWD_', 'contraseña_de_tu_bd'); define('_DB_PREFIX_', 'ps_'); // El prefijo de tus tablas - Si no estás seguro, puedes obtener estos datos desde Plesk: ve a Bases de datos y busca los detalles de la base de datos de tu tienda.
- Nunca edites la contraseña manualmente a menos que sepas que la has cambiado en la base de datos. Si todo parece correcto, no toques nada.
Preguntas Frecuentes (FAQ)
P: ¿Por qué aparece el error 500 solo en algunas páginas?
R: Esto suele deberse a un módulo o tema especÃfico. Activa el modo debug (Solución 1) para ver qué archivo o clase está fallando.
P: He hecho todos los pasos y el error persiste. ¿Qué hago?
R: Revisa los logs del servidor. En Plesk, ve a Sitios web y dominios > Registros (o Logs). Busca el archivo error_log de tu dominio. Las lÃneas con "[error]" te darán pistas. Si no encuentras nada, contacta con tu proveedor de hosting.
P: ¿El error 500 puede deberse a un ataque?
R: Es posible, pero no es lo más común. Si sospechas, revisa los archivos PHP en busca de código extraño (por ejemplo, lÃneas con base64_decode o funciones extrañas). Cambia todas las contraseñas (FTP, base de datos, back office) y actualiza PrestaShop a la última versión.
P: Mi tienda está en Syspanel (HestiaCP, puerto 2106). ¿Los pasos son los mismos?
R: SÃ, los conceptos son idénticos. La diferencia está en la interfaz. En Syspanel, busca "Administrador de archivos" y "phpMyAdmin" en el menú principal. Los pasos para editar archivos, permisos y base de datos son los mismos.
P: ¿Debo actualizar PrestaShop si tengo este error?
R: No como primera medida. Primero soluciona el error. Una vez que la tienda funcione, haz una copia de seguridad completa y luego actualiza. Una actualización forzada sobre un sitio con errores puede empeorar las cosas.
Resumen y recomendaciones finales
El error 500 PrestaShop en Plesk puede parecer un monstruo, pero con paciencia y siguiendo estos pasos, podrás domarlo. Recuerda:
- Siempre haz copias de seguridad. Es la regla de oro.
- Empieza por lo simple: Limpiar caché y verificar el
.htaccess. - Activa el modo debug para obtener información precisa.
- No edites archivos si no estás seguro de lo que estás haciendo.
Si después de todo esto el error continúa, no dudes en abrir un ticket de soporte con tu proveedor de hosting. Ellos tienen acceso a herramientas más profundas del servidor.
¡Espero que este artÃculo te haya sido de gran ayuda! Ya sabes, si tienes cualquier otra duda, aquà estoy para ayudarte. ¡Buena suerte con tu tienda!
