Cómo arreglar el error 500 en PrestaShop desde cPanel
¿Qué es el error 500 en PrestaShop y por qué aparece?
El error 500 PrestaShop es uno de los problemas más frustrantes que puedes encontrar como dueño de una tienda online. Es un error genérico del servidor que significa: "algo ha ido mal, pero no te voy a decir exactamente qué". Aparece como una página en blanco o con el texto "Internal Server Error" y puede bloquear completamente tu tienda, impidiendo que tus clientes compren.
Lo primero que debes saber es que este error no siempre es culpa de PrestaShop. Puede deberse a múltiples factores: archivos con permisos incorrectos, un módulo incompatible, un archivo .htaccess corrupto, problemas con la memoria PHP, o incluso un tema mal configurado. La buena noticia es que, en la mayoría de los casos, puedes solucionar error 500 cPanel sin necesidad de contratar a un experto.
En esta guía completa, te explicaré paso a paso cómo diagnosticar y arreglar el error 500 en tu tienda PrestaShop usando cPanel, la herramienta de administración de hosting más común. No necesitas ser un programador para seguir estos pasos, solo paciencia y un poco de método.
Paso 1: Activar el modo debug de PrestaShop para ver el error real
El primer paso para arreglar error 500 es descubrir qué está fallando realmente. PrestaShop tiene un modo de depuración (debug) que te mostrará el error específico en lugar de la página genérica.
Cómo activar el modo debug desde cPanel
- Accede a tu cPanel (normalmente en
tudominio.com/cpanelotudominio.com:2083). - Busca la sección "Administrador de archivos" y haz clic para abrirla.
- Navega hasta la carpeta raíz de tu PrestaShop (normalmente
public_htmlowww). - Busca el archivo llamado
config/defines.inc.phpy haz clic derecho sobre él. - Selecciona "Editar" o "Code Editor".
- Busca la línea que dice:
define('_PS_MODE_DEV_', false); - Cambia
falseportrue:define('_PS_MODE_DEV_', true); - Guarda los cambios y cierra el editor.
- Ahora, recarga tu tienda. Verás un mensaje de error detallado con la causa exacta del problema.
[WARNING] No olvides volver a poner
falsecuando termines de arreglar el error. Dejar el modo debug activo en producción es un riesgo de seguridad grave.
¿Qué significan los errores más comunes?
Los errores que verás con el modo debug suelen ser de estos tipos:
- "Fatal error: Allowed memory size...": Tu sitio necesita más memoria PHP.
- "Fatal error: Call to undefined function...": Un módulo o tema está usando una función que no existe.
- "Parse error: syntax error...": Hay un error de sintaxis en algún archivo PHP.
Paso 2: Aumentar el límite de memoria PHP desde cPanel
Uno de los causantes más habituales de PrestaShop error 500 es la falta de memoria PHP. PrestaShop es una plataforma bastante exigente, especialmente si tienes muchos módulos o un catálogo grande.
Método 1: Modificar el archivo php.ini
- En cPanel, ve a la sección "Administrador de archivos".
- Navega a la carpeta raíz de tu tienda.
- Busca un archivo llamado
php.ini. Si no existe, créalo con el botón "+ Archivo". - Haz clic derecho sobre él y selecciona "Editar".
- Añade o modifica estas líneas:
memory_limit = 256M max_execution_time = 300 max_input_time = 300 post_max_size = 64M upload_max_filesize = 64M - Guarda los cambios y comprueba si el error desaparece.
Método 2: Usar el selector de versión PHP (MultiPHP INI Editor)
- En cPanel, busca la sección "MultiPHP INI Editor".
- Selecciona tu dominio en el desplegable.
- Busca el campo
memory_limity cámbialo a256Mo512M. - Haz clic en "Apply" o "Guardar".
[TIP] Si tu hosting usa LiteSpeed, también puedes crear un archivo
.htaccesscon la línea:php_value memory_limit 256M. Pero primero prueba con los métodos anteriores.
Paso 3: Revisar y reparar el archivo .htaccess
El archivo .htaccess es esencial para el funcionamiento de PrestaShop. Si está corrupto o tiene reglas incompatibles, puede generar un error 500 PrestaShop inmediatamente.
Cómo regenerar el .htaccess desde el panel de administración
- Accede a tu panel de administración de PrestaShop (normalmente en
/admin). - Ve a Preferencias → SEO y URLs.
- Haz clic en el botón "Guardar" sin cambiar nada. Esto regenerará el
.htaccess.
Cómo regenerar el .htaccess manualmente desde cPanel
Si no puedes acceder al panel de administración:
- En cPanel, abre el "Administrador de archivos".
- Navega a la carpeta raíz de tu tienda.
- Localiza el archivo
.htaccess. Si existe, renómbralo a.htaccess.bak(para tener una copia de seguridad). - Si no existe, crea un archivo nuevo llamado
.htaccess. - Pega este contenido básico:
(Reemplaza# START PRESTASHOP <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_HOST} ^tudominio.com [NC] RewriteRule ^(.*)$ https://tudominio.com/$1 [L,R=301] </IfModule> # END PRESTASHOPtudominio.comcon tu dominio real). - Guarda el archivo y recarga tu tienda.
[WARNING] Esta solución temporal puede afectar a tus URLs amigables. Una vez que recuperes el acceso al panel de administración, ve a SEO y URLs y guarda de nuevo para regenerar el
.htaccesscompleto.
Paso 4: Verificar los permisos de archivos y carpetas
Los permisos incorrectos son otra causa muy común de PrestaShop error 500. Si un archivo tiene permisos demasiado estrictos, el servidor no puede leerlo; si son demasiado permisivos, puede ser un riesgo de seguridad.
Los permisos correctos para PrestaShop
- Carpetas: 755 (rwxr-xr-x)
- Archivos: 644 (rw-r--r--)
- Archivos de configuración (
config/settings.inc.php): 444 o 644
Cómo corregir permisos desde cPanel
- En cPanel, ve a "Administrador de archivos".
- Navega a la carpeta raíz de tu tienda.
- Selecciona todos los archivos y carpetas (Ctrl+A o botón "Select All").
- Haz clic en "Permissions" o "Permisos" en la barra superior.
- Marca las casillas para configurar:
- Para carpetas:
755(marca: owner: read, write, execute / group: read, execute / others: read, execute). - Para archivos:
644(marca: owner: read, write / group: read / others: read).
- Para carpetas:
- Haz clic en "Change" o "Cambiar".
[TIP] Si tienes muchos archivos, puede tardar un poco. Ten paciencia y no interrumpas el proceso.
Paso 5: Desactivar módulos o temas problemáticos
Si el error apareció después de instalar un módulo o cambiar de tema, es muy probable que sea el culpable. Desactivarlo puede ser la solución al error 500 PrestaShop.
Método 1: Desde el panel de administración
- Ve a "Módulos" → "Módulos y Servicios".
- Busca el módulo más reciente que hayas instalado.
- Haz clic en "Desactivar".
- Si el error desaparece, ya sabes cuál es el problema. Desinstálalo o contacta con su desarrollador.
Método 2: Desde la base de datos (más avanzado)
Si no puedes acceder al panel de administración:
- En cPanel, busca la sección "Bases de datos MySQL" y haz clic en "phpMyAdmin".
- Selecciona la base de datos de tu PrestaShop.
- Haz clic en la pestaña "SQL".
- Ejecuta esta consulta para desactivar todos los módulos:
(Añade el prefijo de tu base de datos si no esUPDATE ps_modules SET active = 0 WHERE active = 1;ps_). - Para desactivar un módulo específico, primero búscalo:
Luego desactívalo:SELECT * FROM ps_modules WHERE name LIKE '%nombre_del_modulo%';
(ReemplazaUPDATE ps_modules SET active = 0 WHERE id_module = X;Xcon el ID del módulo).
[INFO] También puedes renombrar la carpeta del módulo en el servidor (dentro de
/modules) añadiendo un guion bajo al principio, por ejemplo_nombre_modulo. Esto lo desactiva sin tocar la base de datos.
Paso 6: Limpiar la caché de PrestaShop
La caché acumulada puede contener datos corruptos que provocan el error 500. Limpiarla es rápido y a menudo resuelve el problema.
Desde el panel de administración
- Ve a "Parámetros avanzados" → "Rendimiento".
- Haz clic en "Vaciar la caché" o "Clear cache".
- También puedes activar la opción "Forzar compilación" temporalmente y luego desactivarla.
Desde cPanel eliminando archivos manualmente
- En el "Administrador de archivos", navega a la carpeta
/var/cachedentro de tu instalación de PrestaShop. - Elimina todos los archivos y carpetas dentro de
/var/cache(no la carpeta en sí). - Si tienes acceso SSH, puedes usar el comando:
rm -rf /home/usuario/public_html/var/cache/*
[TIP] En PrestaShop 1.7 y versiones posteriores, la carpeta de caché es
/var/cache. En versiones anteriores, puedes buscar en/cacheo/smarty/cache.
Paso 7: Comprobar el registro de errores del servidor
Si ninguno de los pasos anteriores ha funcionado, es hora de consultar los logs del servidor. Esto te dará información exacta sobre qué está fallando.
Cómo ver los logs desde cPanel
- En cPanel, busca la sección "Registros de errores" o "Error Logs".
- Haz clic en el dominio afectado.
- Busca las entradas más recientes que coincidan con la fecha y hora del error.
- Anota cualquier mensaje de error PHP o de Apache que veas.
Errores comunes que verás en los logs
- "Permission denied": Problema de permisos en archivos (revisa el paso 4).
- "PHP Fatal error": Indica el archivo y línea exacta donde falla.
- "ModSecurity": El firewall del servidor está bloqueando algo.
[WARNING] Si no entiendes los logs, no te preocupes. Copia el mensaje de error y búscalo en Google o en foros de PrestaShop. Es muy probable que alguien ya haya tenido el mismo problema y tenga la solución.
Paso 8: Soluciones adicionales y casos especiales
Restaurar desde una copia de seguridad
Si el error apareció tras una actualización fallida o un cambio reciente, la solución más rápida puede ser restaurar una copia de seguridad anterior.
- En cPanel, busca la sección "Copias de seguridad" o "Backup".
- Si tu hosting tiene copias automáticas, podrás restaurar una versión anterior de tu sitio.
- También puedes restaurar solo archivos o solo la base de datos.
Comprobar el espacio en disco
Un servidor con el disco lleno puede provocar errores extraños, incluido el error 500 PrestaShop.
- En cPanel, ve a "Uso del disco" o "Disk Usage".
- Si estás cerca del límite, elimina archivos temporales, copias de seguridad antiguas o correos no deseados.
Actualizar PHP a una versión compatible
PrestaShop requiere una versión específica de PHP. Una versión demasiado antigua o demasiado nueva puede causar errores.
- En cPanel, busca "Select PHP Version" o "MultiPHP Manager".
- Prueba con versiones como PHP 7.4 u 8.0 (las más compatibles con PrestaShop 1.7).
- Guarda los cambios y comprueba si el error desaparece.
Preguntas frecuentes (FAQ)
¿Por qué veo el error 500 solo en algunas páginas?
Esto suele indicar que el problema está en un módulo específico que solo se carga en esas páginas, o en una plantilla de producto/categoría concreta. Revisa los logs para identificar qué módulo o archivo está fallando.
¿Cuánto tiempo se tarda en arreglar el error 500?
Depende de la causa. Los problemas de permisos o .htaccess se resuelven en 10-15 minutos. Los problemas con módulos pueden llevar más tiempo si necesitas contactar con el desarrollador.
¿Puedo evitar este error en el futuro?
Sí, siguiendo estas buenas prácticas:
- Haz copias de seguridad regularmente.
- No instales módulos de fuentes no oficiales.
- Actualiza PrestaShop y los módulos con precaución.
- Mantén los permisos de archivos correctos.
- Monitorea el espacio en disco y la memoria PHP.
¿Debo contactar con mi proveedor de hosting?
Si has probado todos los pasos anteriores y el error persiste, es recomendable contactar con tu proveedor de hosting. Ellos pueden revisar los logs del servidor a nivel más profundo y comprobar si hay problemas de configuración en el servidor.
Resumen y consejos finales
El error 500 PrestaShop puede parecer aterrador, pero con esta guía paso a paso tienes todas las herramientas para solucionar error 500 cPanel por ti mismo. Recuerda el orden lógico:
- Activa el modo debug para ver el error real.
- Aumenta la memoria PHP si es un problema de recursos.
- Revisa el
.htaccessy regenéralo si es necesario. - Corrige los permisos de archivos y carpetas.
- Desactiva módulos o temas sospechosos.
- Limpia la caché de PrestaShop.
- Consulta los logs del servidor si todo lo demás falla.
- Restaura una copia de seguridad como último recurso.
[INFO] Si tu hosting usa Syspanel (antes conocido como HestiaCP), el puerto de acceso al panel es el 2106. Los pasos son similares, pero la interfaz puede variar ligeramente. Busca las secciones equivalentes para archivos, bases de datos y logs.
Espero que esta guía te haya sido útil. Recuerda que la prevención es la mejor medicina: mantén tu PrestaShop actualizado, haz copias de seguridad periódicas y no instales módulos de dudosa procedencia. Con estos consejos, el error 500 PrestaShop será solo un mal recuerdo en tu experiencia como administrador de tu tienda online.
