Solucionar el error 500 en PrestaShop en Plesk
¡Hola! Soy tu técnico de soporte amigable.
Si estás leyendo esto, seguramente te has encontrado con la temida pantalla en blanco o el mensaje “Internal Server Error” en tu tienda PrestaShop alojada en un servidor con Plesk. No te preocupes, es uno de los errores más comunes y, aunque puede parecer complejo, en la mayoría de los casos tiene una solución sencilla que puedes aplicar tú mismo.
En esta guía extensa y paso a paso, te voy a explicar qué es el error 500 en PrestaShop, por qué ocurre en entornos Plesk y, lo más importante, cómo solucionarlo de forma definitiva. Vamos a convertir ese “error 500 PrestaShop” en un recuerdo lejano.
¿Qué es el error 500 (Internal Server Error)?
El error 500 es un código de estado HTTP genérico que significa “Error Interno del Servidor”. En palabras simples: el servidor (donde está alojada tu web) ha encontrado una condición inesperada que le impide completar la solicitud. No es un problema de tu conexión a Internet ni de tu navegador, sino de la configuración del servidor o de tu aplicación PrestaShop.
Para un usuario, se ve como una página en blanco o con el texto “500 Internal Server Error”. Para ti como administrador, es una señal de que algo no funciona bien en el “motor” de tu tienda.
Causas más comunes del error 500 en PrestaShop bajo Plesk
Antes de lanzarnos a solucionarlo, es útil entender por qué ocurre. Las causas más frecuentes en un entorno Plesk son:
- Archivo .htaccess corrupto o mal configurado: Es el archivo de configuración de Apache. Un simple salto de línea o una directiva incorrecta puede provocar un error 500.
- Límite de memoria PHP excedido (memory_limit): Si tu tienda tiene muchos módulos, imágenes grandes o mucho tráfico, puede necesitar más memoria de la que tiene asignada.
- Permisos de archivos incorrectos: Los archivos y carpetas de PrestaShop deben tener permisos específicos para que el servidor pueda leerlos y escribirlos.
- Módulo o tema defectuoso: Una actualización fallida o un módulo incompatible pueden generar un error interno.
- Versión de PHP incorrecta: PrestaShop requiere una versión específica de PHP. Si tu servidor Plesk usa una versión muy antigua o muy nueva, puede fallar.
- Problemas con la base de datos: Aunque menos común, una tabla corrupta o una consulta mal formada también pueden derivar en un error 500.
- Cache de PrestaShop corrupta: A veces, la caché de la tienda se vuelve loca y provoca errores.
Paso a paso: Cómo solucionar el error 500 en PrestaShop en Plesk
Vamos a seguir un orden lógico, de lo más simple a lo más complejo. No te saltes pasos; cada uno puede ser la solución.
1. Lo primero: Activar la visualización de errores
Por defecto, PrestaShop oculta los errores para no mostrar información sensible. Pero nosotros necesitamos ver el error real. Para ello, editaremos el archivo config/defines.inc.php.
Paso 1: Accede a tu panel de control Plesk.
Paso 2: Ve a “Archivos” o “Administrador de archivos”.
Paso 3: Navega hasta la carpeta raíz de tu PrestaShop (normalmente httpdocs o public_html).
Paso 4: Busca la carpeta config y dentro el archivo defines.inc.php.
Paso 5: Haz clic derecho sobre él y selecciona “Editar en el editor de texto”.
Paso 6: Busca la línea que dice:
define('_PS_MODE_DEV_', false);
Cámbiala por:
define('_PS_MODE_DEV_', true);
Paso 7: Guarda los cambios.
Ahora, al recargar tu tienda, en lugar del error 500 genérico, verás un mensaje de error específico (por ejemplo, “Fatal error: Allowed memory size of X bytes exhausted”). Anota ese mensaje, ya que te dará la pista definitiva.
[WARNING] No olvides volver a poner
falseuna vez hayas solucionado el error, o tu tienda mostrará información sensible a los visitantes.
2. Solucionar el error según el mensaje obtenido
Ahora que ves el error real, actuemos según el caso:
Caso A: Error de memoria (Allowed memory size exhausted)
Si ves algo como “Allowed memory size of 134217728 bytes exhausted”, significa que tu límite de memoria PHP es insuficiente.
Solución: Aumenta el límite de memoria desde Plesk.
Paso 1: En Plesk, ve a “Hosting y DNS” > “Configuración de hosting”.
Paso 2: Busca la sección “Configuración de PHP”.
Paso 3: Haz clic en “Cambiar” junto a “Opciones de PHP”.
Paso 4: Busca la directiva memory_limit y cámbiala a un valor mayor, por ejemplo 256M o 512M.
Paso 5: Guarda los cambios y recarga tu tienda.
Caso B: Error relacionado con .htaccess
Si el error no da un mensaje claro o sospechas del .htaccess, lo mejor es renombrarlo temporalmente.
Paso 1: En el Administrador de archivos de Plesk, busca el archivo .htaccess en la raíz de tu PrestaShop.
Paso 2: Renómbralo a .htaccess_old (o algo similar).
Paso 3: Recarga tu tienda. Si el error desaparece, el problema está en ese archivo.
¿Qué hacer ahora? Puedes generar un nuevo .htaccess limpio desde el panel de administración de PrestaShop (Parámetros de la tienda > Tráfico y SEO > SEO y URLs > botón “Guardar” sin hacer cambios). O, si lo prefieres, copia el contenido de un .htaccess por defecto de PrestaShop (puedes encontrarlo en la documentación oficial).
Caso C: Error de permisos
Los permisos incorrectos son otra causa común. Los archivos deben tener permiso 644 y las carpetas 755.
Paso 1: En Plesk, ve a “Archivos”.
Paso 2: Selecciona todos los archivos y carpetas de tu PrestaShop (puedes usar Ctrl+A).
Paso 3: Haz clic en “Permisos” (o “Cambiar permisos”).
Paso 4: Marca las casillas para que los archivos queden en 644 y las carpetas en 755. Si no estás seguro, puedes usar la opción “Aplicar a todos los archivos y subcarpetas”.
Paso 5: Guarda los cambios.
[TIP] Si usas FTP, muchos clientes (como FileZilla) permiten cambiar permisos en lote desde el menú contextual.
Caso D: Módulo o tema conflictivo
Si el error apareció después de instalar o actualizar un módulo o tema, ese es el culpable.
Solución temporal: Desactiva el módulo o tema desde el panel de administración. Si no puedes acceder al panel, tendrás que hacerlo manualmente.
Paso 1: Accede a tu base de datos desde Plesk (phpMyAdmin).
Paso 2: Busca la tabla ps_module (el prefijo puede variar, ej: ps_).
Paso 3: Localiza el módulo problemático y cambia su estado de 1 (activo) a 0 (inactivo).
Paso 4: Para temas, busca la tabla ps_theme y desactiva el tema no predeterminado.
3. Soluciones adicionales para Plesk
Si nada de lo anterior funciona, prueba estas opciones específicas de Plesk:
A. Cambiar la versión de PHP
PrestaShop 1.7 funciona mejor con PHP 7.4 o 8.0, mientras que PrestaShop 8 requiere PHP 8.1 o superior.
Paso 1: En Plesk, ve a “Hosting y DNS” > “Configuración de hosting”.
Paso 2: En “Versión de PHP”, selecciona una versión compatible (por ejemplo, 7.4 o 8.1).
Paso 3: Guarda y prueba.
B. Regenerar la caché de Plesk
A veces, Plesk guarda en caché configuraciones antiguas.
Paso 1: Conéctate a tu servidor por SSH (si tienes acceso) o usa el comando desde el terminal de Plesk.
Paso 2: Ejecuta: plesk repair web
Paso 3: Esto regenerará la configuración de Apache y Nginx.
C. Revisar los logs de error de Plesk
Los logs son tu mejor amigo. En Plesk, ve a “Sitios web y dominios” > “Registros” (o “Logs”). Allí encontrarás archivos como error_log que contienen el error exacto.
Preguntas frecuentes (FAQ)
P: ¿El error 500 puede deberse a un ataque?
R: Es poco probable, pero posible. Un ataque DDoS o un intento de inyección SQL podría saturar el servidor. Si sospechas, revisa los logs de seguridad de Plesk.
P: ¿Pierdo datos si renombro el .htaccess?
R: No. Solo se desactivan las reglas de reescritura de URL (amigables). Tus productos, clientes y pedidos no se ven afectados.
P: ¿Debo contratar a un experto?
R: Si después de seguir todos los pasos el error persiste, puede ser un problema de configuración del servidor (como un módulo de Apache deshabilitado). En ese caso, contacta con tu proveedor de hosting.
P: ¿El error 500 afecta al SEO?
R: Sí, porque los motores de búsqueda intentan acceder a tu web y encuentran un error. Si es temporal, no pasa nada, pero si se prolonga, Google puede penalizarte. Por eso es importante solucionarlo rápido.
P: ¿Puedo prevenir el error 500?
R: Totalmente. Mantén PrestaShop, sus módulos y temas actualizados. Haz copias de seguridad periódicas y no instales módulos de fuentes no confiables.
Conclusión
El error 500 en PrestaShop en un servidor Plesk puede ser frustrante, pero como has visto, tiene solución. La clave está en identificar la causa exacta activando el modo de desarrollo y luego aplicar la solución adecuada: ajustar la memoria, reparar el .htaccess, corregir permisos o cambiar la versión de PHP.
Recuerda que siempre puedes consultar los logs de error de Plesk para obtener pistas adicionales. Y si en algún momento te sientes abrumado, no dudes en pedir ayuda a tu proveedor de hosting o a un desarrollador especializado.
¡Espero que esta guía te haya sido de gran ayuda! Ahora, a disfrutar de tu tienda PrestaShop funcionando sin errores.
[INFO] Si necesitas más ayuda, puedes buscar en la comunidad de PrestaShop o en los foros de Plesk. Siempre hay alguien dispuesto a echar una mano.
