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

Cómo solucionar error 500 en PrestaShop en cPanel

Actualizado el 10 de abril de 2026

¡Hola! Soy tu técnico de soporte amigable. Si estás leyendo esto, seguramente te has encontrado con el temido error 500 en PrestaShop alojado en un servidor con cPanel. No te preocupes, es un problema común y, aunque puede parecer complejo, vamos a solucionarlo paso a paso. En esta guía completa, te explicaré qué es este error, por qué ocurre y, lo más importante, cómo solucionarlo tú mismo, incluso si no eres un experto en SysAdmin.

El error 500 es un error genérico del servidor. Básicamente, le dice al navegador: "Algo salió mal, pero no te voy a dar más detalles". En PrestaShop, las causas más frecuentes van desde un simple archivo de configuración corrupto hasta problemas de permisos, memoria insuficiente o un módulo conflictivo. Vamos a desglosarlo.

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

El error 500 indica un problema interno en el servidor web (Apache o Nginx) que impide que PrestaShop se ejecute correctamente. A diferencia de un error 404 (página no encontrada), aquí el servidor sí sabe que la tienda existe, pero no puede procesar la solicitud.

Las causas más comunes son:

  • Archivo .htaccess corrupto o mal configurado: Este archivo es crucial para las reglas de reescritura de URL y la seguridad de PrestaShop.
  • Problemas de permisos de archivos y carpetas: Si los permisos son incorrectos, el servidor no puede leer o escribir los archivos necesarios.
  • Límite de memoria de PHP (memory_limit) insuficiente: PrestaShop, especialmente con muchos módulos o catálogos grandes, puede requerir más memoria de la permitida por defecto.
  • Módulo o tema defectuoso: Un módulo recién instalado o actualizado puede generar conflictos y provocar el error.
  • Archivos de configuración de PrestaShop (settings.inc.php) dañados: Este archivo contiene las credenciales de la base de datos y otras configuraciones críticas.
  • Problemas con la versión de PHP: PrestaShop necesita una versión específica de PHP (generalmente 7.1 a 8.1, según la versión de la tienda). Una versión incompatible puede causar el error.
  • Errores en la base de datos: Aunque menos común, una tabla corrupta o un problema de conexión también puede manifestarse como un error 500.

[INFO] El error 500 es un "comodín". El servidor no te dice exactamente qué falla, por lo que tendremos que investigar. La clave está en revisar los logs de errores del servidor. ¡No te asustes! Te enseñaré cómo hacerlo.

Paso 1: Activar el modo debug de PrestaShop (La solución más rápida)

Antes de tocar nada en cPanel, la forma más directa de obtener información es activar el modo debug de PrestaShop. Esto hará que, en lugar del error 500 genérico, veas un mensaje de error detallado con el archivo y la línea exacta del problema.

¿Cómo activar el modo debug?

  1. Accede a tu panel de control cPanel.
  2. Busca la sección "Archivos" y haz clic en "Administrador de archivos".
  3. Ve a la carpeta raíz de tu tienda PrestaShop (normalmente public_html o una subcarpeta).
  4. Busca el archivo config/defines.inc.php y haz clic derecho sobre él. Selecciona "Editar".
  5. Busca la línea que dice:
    define('_PS_MODE_DEV_', false);
    
  6. Cámbiala por:
    define('_PS_MODE_DEV_', true);
    
  7. Guarda el archivo. Ahora, al recargar tu tienda, deberías ver un mensaje de error mucho más descriptivo, como "Fatal error: Uncaught Error: Call to undefined function..." o "Allowed memory size of... exhausted".

[TIP] Si no encuentras el archivo defines.inc.php, puede que esté oculto. En el Administrador de archivos de cPanel, asegúrate de tener marcada la opción "Mostrar archivos ocultos" (dotfiles). Si aparece un error 500 al activar el modo debug, suele ser por el límite de memoria. En ese caso, pasa al Paso 2.

Paso 2: Aumentar el límite de memoria PHP (memory_limit)

Si el error dice algo como "Allowed memory size of X bytes exhausted", la solución es aumentar el límite de memoria. Hay varias formas de hacerlo en cPanel:

Opción A: Desde el selector de PHP (Recomendado)

  1. En cPanel, busca la sección "Software" y haz clic en "Seleccionar versión de PHP" (o "MultiPHP Manager").
  2. En la nueva ventana, busca tu dominio y haz clic en "Switch to PHP Options" (o "Editor de opciones").
  3. Localiza la opción memory_limit y cámbiala a un valor más alto. Empieza con 256M o incluso 512M si tu servidor lo permite.
  4. Haz clic en "Apply" (Aplicar). Recarga tu tienda.

Opción B: Modificando el archivo .htaccess

  1. En el Administrador de archivos, busca el archivo .htaccess en la raíz de tu tienda. Si no lo ves, activa "Mostrar archivos ocultos".
  2. Edítalo y, al principio del archivo (después de la línea <IfModule mod_rewrite.c>), añade esta línea:
    php_value memory_limit 256M
    
  3. Guarda el archivo.

[WARNING] Si usas PHP-FPM (lo más común hoy en día), modificar el .htaccess no funcionará. En ese caso, usa siempre la Opción A desde el selector de PHP de cPanel.

Paso 3: Verificar y corregir permisos de archivos y carpetas

Los permisos incorrectos son otra causa muy frecuente. PrestaShop necesita que los archivos tengan permisos 644 y las carpetas 755. Vamos a corregirlos en bloque.

  1. En el Administrador de archivos de cPanel, navega a la raíz de tu tienda.
  2. Haz clic en "Seleccionar todo" (o selecciona todos los archivos y carpetas manualmente).
  3. En el menú superior, haz clic en "Permisos".
  4. Se abrirá una ventana. No marques "Recursivo" aún. Primero, para archivos:
    • Marca las casillas: Lectura (propietario, grupo, público), Escritura (solo propietario), Ejecución (ninguna). El valor numérico debe ser 644.
    • Haz clic en "Cambiar permisos".
  5. Repite el proceso, pero ahora marca "Recursivo" y selecciona "Solo archivos" (o "Files only").
  6. Luego, repite para las carpetas: permisos 755 (Lectura y Ejecución para todos, Escritura solo para propietario) y, con "Recursivo", selecciona "Solo carpetas" (o "Folders only").

[INFO] No te olvides de la carpeta cache, log y upload. A veces, PrestaShop necesita permisos 777 temporalmente para generar archivos de caché, pero después de la instalación, 755 es suficiente.

Paso 4: Renombrar el archivo .htaccess (Para descartar problemas)

Un archivo .htaccess corrupto es un clásico. Vamos a desactivarlo temporalmente para ver si ese es el problema.

  1. En el Administrador de archivos, localiza el archivo .htaccess en la raíz de tu tienda.
  2. Cámbiale el nombre a algo como .htaccess_old o htaccess.bak.
  3. Recarga tu tienda. Si el error desaparece, el problema está en el .htaccess.
  4. Solución: Ve al panel de administración de PrestaShop (si puedes acceder) a Configuración avanzada > Rendimiento y haz clic en "Guardar" (sin cambiar nada). Esto regenerará el .htaccess automáticamente.
  5. Si no puedes acceder al panel de admin, crea un archivo .htaccess nuevo y vacío, y luego usa la función de regeneración desde el back office cuando puedas.

Paso 5: Revisar los logs de errores de cPanel

Si todo lo anterior falla, vamos a la fuente de la verdad: los logs del servidor.

  1. En cPanel, busca la sección "Métricas" o "Registros" y haz clic en "Registros de errores" (o "Error Log").
  2. Verás una lista de errores recientes. Busca entradas que contengan la palabra "PrestaShop" o la ruta a tu tienda. Los errores suelen tener el formato: [error] [client IP] PHP Fatal error: ... en /home/usuario/public_html/...
  3. Anota la línea exacta del error. Por ejemplo: ... en /home/usuario/public_html/modules/mimodulo/mimodulo.php on line 150. Esto te dirá exactamente qué archivo está causando el problema.

[TIP] Si el log de errores está vacío, puede que el error se esté registrando en otro lugar. Busca en "Registros de Apache" > "Errores" (reciente). También puedes acceder a la carpeta logs de tu cuenta de hosting a través del Administrador de archivos.

Paso 6: Deshabilitar módulos y temas conflictivos

Si el log de errores apunta a un módulo específico (como en el ejemplo anterior), la solución es deshabilitarlo. La forma más segura de hacerlo sin acceder al back office es renombrar la carpeta del módulo.

  1. En el Administrador de archivos, ve a la carpeta modules de tu PrestaShop.
  2. Busca la carpeta del módulo problemático (por ejemplo, mimodulo).
  3. Cámbiale el nombre, por ejemplo, a mimodulo_old.
  4. Recarga tu tienda. Si el error desaparece, ya sabes quién es el culpable.

Si el problema es un tema (plantilla), el proceso es similar:

  1. Ve a la carpeta themes.
  2. Localiza la carpeta de tu tema activo.
  3. Cámbiale el nombre temporalmente. PrestaShop usará el tema predeterminado (generalmente classic o default-bootstrap). Si tu tienda carga, el tema es el problema.

Paso 7: Verificar la versión de PHP

PrestaShop tiene requisitos de versión de PHP. Por ejemplo, PrestaShop 1.7.8 funciona con PHP 7.1 a 8.0, pero PrestaShop 8.x necesita PHP 8.1 o superior. Una versión incorrecta puede dar error 500.

  1. En cPanel, ve a "Seleccionar versión de PHP".
  2. Asegúrate de que la versión seleccionada para tu dominio sea compatible con tu versión de PrestaShop. Si no estás seguro, elige una versión intermedia como PHP 7.4 o 8.0 (si tu tienda lo permite).
  3. Si cambias la versión, guarda los cambios y recarga la tienda.

Paso 8: Reparar la base de datos (Caso extremo)

A veces, una tabla de la base de datos se corrompe. PrestaShop tiene una herramienta para repararla, pero puede ser compleja de usar. Un método más sencillo es usar la herramienta de cPanel.

  1. En cPanel, busca "Bases de datos MySQL" y haz clic en "phpMyAdmin".
  2. Selecciona la base de datos de tu PrestaShop (la que configuraste durante la instalación).
  3. En la parte inferior, marca "Seleccionar todo".
  4. En el menú desplegable (justo debajo de las tablas), selecciona "Reparar tabla".

[WARNING] Haz siempre una copia de seguridad de tu base de datos antes de repararla. Puedes hacerlo desde phpMyAdmin o desde la opción "Copias de seguridad" de cPanel.

Preguntas Frecuentes (FAQ)

P: ¿Por qué veo el error 500 solo en algunas páginas?

R: Esto suele deberse a un módulo o una regla de URL específica. Revisa los logs de errores para ver qué página concreta lo provoca. También puede ser un problema de caché; prueba a limpiar la caché de PrestaShop desde el back office o renombrando la carpeta cache temporalmente.

P: No tengo acceso al back office de PrestaShop. ¿Puedo solucionarlo solo desde cPanel?

R: Sí, absolutamente. Todos los pasos que te he mostrado (modificar defines.inc.php, cambiar permisos, renombrar módulos, etc.) se pueden hacer directamente desde el Administrador de archivos de cPanel.

P: He probado todo y el error persiste. ¿Qué hago?

R: Si has seguido todos los pasos, es posible que el problema sea más profundo (por ejemplo, un error de configuración del servidor). En ese caso, contacta con el soporte de tu hosting. Proporciónales el log de errores que encontraste en el Paso 5. Ellos podrán verificar la configuración de Apache/Nginx, la memoria del servidor o si hay algún bloqueo de seguridad (mod_security). También puedes preguntar en foros especializados de PrestaShop.

P: ¿Afecta el error 500 al SEO de mi tienda?

R: Sí, y mucho. Si el error persiste durante horas o días, los motores de búsqueda como Google pueden empezar a indexar páginas con error, lo que perjudica tu posicionamiento. Además, los usuarios que intenten acceder a tu tienda se encontrarán con una pantalla en blanco y se irán. Es crucial solucionarlo lo antes posible.

P: Si uso Syspanel (HestiaCP) en lugar de cPanel, ¿cómo accedo?

R: Si tu hosting usa Syspanel (HestiaCP), el acceso se realiza a través del puerto 2106 (por ejemplo, tudominio.com:2106). Una vez dentro, la estructura de archivos y las herramientas son similares (Administrador de archivos, phpMyAdmin, etc.), pero los nombres de las secciones pueden variar ligeramente. Busca las opciones equivalentes a "Archivos", "Base de datos" y "PHP". Los pasos para solucionar el error 500 son prácticamente los mismos.

[INFO] Recuerda que la prevención es la mejor cura. Mantén tu PrestaShop, módulos y temas siempre actualizados. Haz copias de seguridad periódicas de tu web y base de datos. Y, si no te sientes seguro, siempre puedes pedir ayuda a un profesional SysAdmin.

Espero que esta guía te haya sido de gran ayuda. Recuerda, el error 500 es frustrante, pero casi siempre tiene solución. Si tienes alguna otra duda, no dudes en dejarla en los comentarios. ¡Buena 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