Cómo solucionar el error 500 en PrestaShop (guía para cPanel)
¡Hola! Soy tu técnico de soporte amigable. Si estás leyendo esto, probablemente has visto la temida pantalla blanca o el mensaje "Error 500: Internal Server Error" en tu tienda PrestaShop. No te preocupes, es uno de los errores más comunes y, en la mayoría de los casos, se soluciona en pocos minutos. En esta guía completa, te voy a explicar paso a paso cómo solucionar el error 500 en PrestaShop usando cPanel. Vamos a ir desde lo más básico hasta opciones más avanzadas, siempre con un lenguaje claro y sencillo.
¿Qué es el error 500 en PrestaShop?
El error 500 PrestaShop cPanel es un error genérico del servidor. Significa que algo salió mal en el backend de tu tienda, pero el servidor no puede dar más detalles por sí mismo. Las causas pueden ser muchas: desde un plugin conflictivo, un archivo corrupto, problemas de permisos, hasta un límite de memoria excedido.
Lo bueno es que, con las herramientas de cPanel y un poco de paciencia, podrás identificar y solucionar error 500 sin necesidad de ser un experto en programación.
Requisitos previos: Antes de empezar
Antes de lanzarnos a los pasos, asegúrate de tener a mano:
- Acceso a cPanel de tu hosting (usuario y contraseña).
- Acceso al administrador de archivos de cPanel o a un cliente FTP (como FileZilla).
- Acceso a phpMyAdmin (para gestionar la base de datos si es necesario).
- Una copia de seguridad reciente de tu tienda. Si algo sale mal, podrás restaurarla.
[WARNING] Siempre haz una copia de seguridad antes de modificar archivos o la base de datos. ¡No queremos perder clientes ni productos!
Paso 1: Activar los logs de errores de PrestaShop
El primer paso para solucionar el error 500 en PrestaShop es ver qué está pasando realmente. PrestaShop tiene un sistema de logs que, por defecto, puede estar desactivado en producción. Vamos a activarlo temporalmente.
1.1. Accede al administrador de archivos de cPanel
- Inicia sesión en tu cPanel.
- Busca la sección Archivos y haz clic en Administrador de Archivos.
- Navega hasta la carpeta raíz de tu PrestaShop (normalmente
public_htmlo una subcarpeta comotienda).
1.2. Edita el archivo config/defines.inc.php
- Dentro de la carpeta
config, busca el archivodefines.inc.php. - Haz clic derecho y selecciona Editar.
- Busca la línea que dice:
define('_PS_MODE_DEV_', false); - Cámbiala a:
define('_PS_MODE_DEV_', true); - Guarda los cambios.
[TIP] Esto activará el modo desarrollador y mostrará mensajes de error detallados en lugar del error 500 genérico. Una vez solucionado el problema, vuelve a cambiarlo a
falsepor seguridad.
Ahora, recarga tu tienda. Si ves un mensaje de error más específico (como "Fatal error: Allowed memory size exhausted" o "Class not found"), ya tienes una pista. Si no, continúa con los siguientes pasos.
Paso 2: Aumentar el límite de memoria PHP
Uno de los culpables más frecuentes del error 500 PrestaShop cPanel es que el script se queda sin memoria. PrestaShop, especialmente con muchos módulos o catálogos grandes, puede necesitar más memoria de la que el servidor asigna por defecto.
2.1. Modificar el archivo php.ini
- En el Administrador de Archivos de cPanel, busca en la raíz de tu PrestaShop un archivo llamado
php.ini. Si no existe, puedes crearlo. - Si no lo ves, ve a la sección Software de cPanel y busca Selector de versión de PHP o MultiPHP INI Editor. Allí podrás editar los valores.
- Busca la línea
memory_limity cámbiala a un valor mayor, por ejemplo:
o inclusomemory_limit = 256M512Msi tu hosting lo permite. - También puedes aumentar
max_execution_timeymax_input_vars:max_execution_time = 120 max_input_vars = 5000 - Guarda los cambios y recarga la tienda.
[INFO] Si no encuentras el archivo
php.ini, puedes crear uno nuevo con un bloc de notas y subirlo vía FTP. Asegúrate de que tenga los permisos correctos (644).
Paso 3: Verificar permisos de archivos y carpetas
Los permisos incorrectos son otra causa común. PrestaShop necesita que ciertos archivos y carpetas tengan permisos específicos para funcionar.
3.1. Permisos recomendados
- Carpetas: 755
- Archivos: 644
- Carpeta
config: 755 - Carpeta
cache: 755 (y a veces 777 si tienes problemas de escritura) - Archivo
settings.inc.php(enconfig): 644
3.2. Cómo cambiarlos en cPanel
- En el Administrador de Archivos, selecciona la carpeta raíz de tu PrestaShop.
- Haz clic en Cambiar permisos en la barra superior.
- Aplica los permisos de forma recursiva (marca la casilla "Aplicar a subdirectorios y archivos").
- Para archivos específicos, selecciona el archivo y cambia sus permisos individualmente.
[WARNING] No pongas permisos 777 a todo. Solo hazlo temporalmente si un módulo o actualización lo requiere, y luego revierte a 755.
Paso 4: Deshabilitar módulos problemáticos
A veces un módulo recién instalado o actualizado causa el error 500 PrestaShop cPanel. Si no puedes acceder al panel de administración, tendrás que hacerlo manualmente.
4.1. Renombrar la carpeta de módulos
- En el Administrador de Archivos, ve a la carpeta
modulesde tu PrestaShop. - Cámbiale el nombre temporalmente, por ejemplo, a
modules_backup. - Crea una nueva carpeta vacía llamada
modules. - Recarga tu tienda. Si el error desaparece, el problema está en uno de los módulos.
- Para identificar cuál, mueve los módulos de vuelta a la carpeta
modulesde uno en uno (o en grupos pequeños) hasta que el error reaparezca.
[TIP] Si no quieres desactivar todos los módulos, puedes desactivar solo los que instalaste recientemente. Revisa las fechas de modificación de las carpetas dentro de
modules.
Paso 5: Comprobar la base de datos
Un error en la base de datos también puede provocar un error 500. PrestaShop tiene una herramienta para repararla.
5.1. Usar la herramienta de reparación de PrestaShop
- Accede a tu panel de administración de PrestaShop (si puedes). Ve a Parámetros Avanzados > Base de datos y haz clic en Verificar y reparar la base de datos.
- Si no puedes acceder al panel, usa phpMyAdmin desde cPanel:
- En cPanel, busca phpMyAdmin en la sección Bases de datos.
- Selecciona la base de datos de tu tienda.
- En la parte inferior, marca la opción Seleccionar todo y elige Reparar tabla en el menú desplegable.
[INFO] Si la reparación falla, puede ser necesario restaurar una copia de seguridad de la base de datos.
Paso 6: Revisar el archivo .htaccess
Un archivo .htaccess corrupto o mal configurado puede generar un error 500 PrestaShop cPanel. PrestaShop genera este archivo automáticamente, pero a veces se daña.
6.1. Regenerar el .htaccess
- Ve al Administrador de Archivos y busca el archivo
.htaccessen la raíz de tu PrestaShop. - Cámbiale el nombre a
.htaccess_backup(por si acaso). - Ahora, accede a tu panel de administración de PrestaShop (si puedes) y ve a Parámetros Avanzados > SEO y URLs. Haz clic en Guardar sin cambiar nada. Esto regenerará el archivo.
- Si no puedes acceder al panel, crea un nuevo archivo
.htaccessen blanco y luego restaura desde una copia de seguridad o pide a tu hosting que lo genere.
[WARNING] No elimines el
.htaccesssin tener un respaldo. Puede romper las URLs amigables.
Paso 7: Verificar la versión de PHP
PrestaShop requiere una versión específica de PHP. Usar una versión demasiado antigua o demasiado nueva puede causar errores.
7.1. Cambiar la versión de PHP desde cPanel
- En cPanel, busca la sección Software y haz clic en Selector de versión de PHP o MultiPHP Manager.
- Selecciona la versión recomendada para tu PrestaShop (normalmente PHP 7.4 u 8.0, según la versión de PrestaShop).
- Aplica los cambios.
[INFO] Consulta la documentación de tu versión de PrestaShop para saber qué PHP es compatible. Por ejemplo, PrestaShop 1.7 funciona bien con PHP 7.4, mientras que versiones antiguas como 1.6 pueden necesitar PHP 5.6.
Paso 8: Limpiar la caché de PrestaShop
La caché puede almacenar datos corruptos que causen el error 500. Limpiarla es rápido y efectivo.
8.1. Desde el panel de administración
Si puedes acceder, ve a Parámetros Avanzados > Rendimiento y haz clic en Limpiar caché.
8.2. Manualmente desde cPanel
- En el Administrador de Archivos, ve a la carpeta
var/cache(ocacheen versiones antiguas). - Elimina todo el contenido de las subcarpetas
devyprod(no las carpetas en sí, solo su interior). - También puedes eliminar la carpeta
cache/smarty/cacheycache/smarty/compile.
[TIP] Si no ves la carpeta
var, asegúrate de tener activada la opción Mostrar archivos ocultos en el Administrador de Archivos.
Paso 9: Revisar los logs del servidor (error_log)
Si todo lo anterior falla, los logs del servidor son tu mejor amigo. Contienen el error exacto.
9.1. Localizar el archivo error_log
- En el Administrador de Archivos, busca un archivo llamado
error_logen la raíz de tu PrestaShop o en carpetas comologs. - Ábrelo y busca la línea que coincida con la hora en que viste el error 500.
- El mensaje típico puede ser algo como:
PHP Fatal error: Allowed memory size of X bytes exhaustedPHP Fatal error: Uncaught Error: Class '...' not foundPHP Parse error: syntax error, unexpected ...
Con esa información, puedes buscar soluciones específicas.
[INFO] Si no ves el archivo
error_log, puede estar desactivado. Pregunta a tu proveedor de hosting cómo activarlo.
Paso 10: Restaurar desde una copia de seguridad
Si después de todos estos pasos el error persiste, la solución más rápida es restaurar una copia de seguridad reciente. Esto te devolverá a un estado funcional.
10.1. Usar la herramienta de backup de cPanel
- En cPanel, busca Copias de seguridad o Backup.
- Restaura los archivos y la base de datos desde una copia anterior al error.
- Si no tienes backup, contacta a tu hosting para ver si tienen una copia de seguridad automática.
[WARNING] La restauración borrará cualquier cambio posterior a la copia. Asegúrate de que sea la última opción.
Preguntas frecuentes (FAQ)
¿Por qué aparece el error 500 solo en algunas páginas?
Puede ser un módulo específico que se carga en esas páginas, o un problema con las URLs amigables. Revisa los logs y desactiva módulos uno por uno.
¿El error 500 puede deberse a un ataque?
Sí, a veces un ataque o malware modifica archivos. Escanea tu tienda con herramientas de seguridad como las que ofrece tu hosting o módulos de seguridad de PrestaShop.
¿Necesito conocimientos de programación para solucionarlo?
No, con esta guía y las herramientas de cPanel puedes resolverlo sin tocar código. Si no te sientes seguro, pide ayuda a tu hosting o a un desarrollador.
¿Qué hago si no tengo acceso a cPanel?
Pide a tu hosting que te proporcione acceso o que ellos mismos revisen el error. También puedes usar FTP para modificar archivos, pero cPanel es más cómodo.
Consejos finales
- Mantén todo actualizado: PrestaShop, módulos, temas y PHP.
- Haz copias de seguridad periódicas: Al menos una vez por semana.
- Usa un hosting de calidad: Un servidor lento o mal configurado es la causa de muchos errores 500.
- Si usas Syspanel (HestiaCP): Recuerda que el puerto de acceso es el 2106, y los pasos son similares aunque la interfaz cambie.
Espero que esta guía te haya ayudado a solucionar el error 500 en PrestaShop con cPanel. Si el problema persiste, no dudes en contactar a tu proveedor de hosting o a un especialista. ¡Buena suerte con tu tienda!
