Cómo solucionar el error 500 en PrestaShop (consejos prácticos)
¿Qué significa exactamente el error 500 en PrestaShop?
Cuando tu tienda online muestra un error 500, significa que algo ha fallado en el servidor pero no te dice exactamente qué. Es como si el camarero de un restaurante te dijera "hay un problema en la cocina" sin darte más detalles. Para ti, como dueño de la tienda, es frustrante porque tus clientes no pueden comprar y tú no sabes por dónde empezar.
Este error es especialmente común en PrestaShop porque es una plataforma que depende de muchos archivos, bases de datos y extensiones que trabajan juntos. Cualquier pequeño conflicto puede provocar que el servidor "explote" y muestre este mensaje genérico.
La buena noticia es que solucionar error 500 tienda no siempre requiere ser un experto en programación. En este artículo te voy a guiar paso a paso, con un lenguaje sencillo y consejos prácticos que puedes aplicar aunque nunca hayas tocado un servidor antes.
Primero: identifica si el error afecta a toda la tienda o solo a algunas páginas
Antes de ponerte a tocar nada, necesitas saber el alcance del problema. Esto te ahorrará mucho tiempo.
Prueba rápida de diagnóstico
- Abre tu tienda en una ventana de incógnito (Ctrl+Shift+N en Chrome, Ctrl+Shift+P en Firefox).
- Visita la página principal, una categoría y un producto.
- Entra al panel de administración (normalmente en
/admino la URL que configuraste). - Prueba a hacer login como cliente y como administrador.
Resultados posibles:
- Si el error aparece en todas las páginas, el problema es global (archivos core, base de datos o configuración del servidor).
- Si solo falla alguna sección concreta (por ejemplo, el carrito), el problema suele estar en un módulo o en la configuración de cookies.
- Si el panel de administración funciona pero la tienda no, es un problema de permisos de archivos o de caché.
Activa el modo de depuración para ver el error real
PrestaShop tiene un modo de depuración que te muestra el error real en lugar del genérico. Es como abrir la puerta de la cocina y ver qué se está quemando.
Cómo activar el modo debug en PrestaShop 1.7 y 1.6
Necesitas acceder al archivo config/defines.inc.php de tu instalación. Puedes hacerlo desde el administrador de archivos de tu hosting o mediante FTP.
- Localiza el archivo
config/defines.inc.phpen la raíz de tu PrestaShop. - Ábrelo con un editor de texto (nunca con el bloc de notas de Windows si puedes evitarlo, mejor usa Notepad++ o Visual Studio Code).
- Busca la línea que dice
define('_PS_MODE_DEV_', false); - Cámbiala por
define('_PS_MODE_DEV_', true); - Guarda el archivo y sube los cambios.
IMPORTANTE: No olvides volver a poner false cuando termines de diagnosticar el problema. Dejar el modo debug activo en producción es un riesgo de seguridad grave, ya que muestra información sensible de tu servidor.
[WARNING]: Si no encuentras la línea exacta, busca
_PS_MODE_DEV_con la función de búsqueda del editor. En versiones antiguas puede estar en otro archivo llamadoconfig/config.inc.php.
Ahora recarga la página que daba error. Verás un mensaje mucho más descriptivo, algo como "Fatal error: Uncaught Error: Call to undefined function..." o "SQLSTATE[HY000] [1045] Access denied...". Ese mensaje te dirá exactamente qué módulo o archivo está fallando.
Los 5 problemas más comunes que causan el error 500 en PrestaShop
Basándome en mi experiencia soportando tiendas, estos son los culpables habituales:
1. Permisos de archivos incorrectos
PrestaShop necesita que ciertos archivos y carpetas tengan permisos específicos para poder leer y escribir. Si alguien (o algún módulo) cambió estos permisos, el servidor no puede ejecutar las operaciones necesarias.
La solución estándar:
- Carpetas: deben tener permiso 755.
- Archivos: deben tener permiso 644.
- La carpeta
configycachea veces necesitan 777 temporalmente (aunque no es recomendable dejarlo así).
Puedes cambiar estos permisos desde el administrador de archivos de tu hosting o con un cliente FTP como FileZilla.
2. Memoria PHP insuficiente
PrestaShop es bastante "glotón" con la memoria del servidor. Si tu hosting tiene un límite bajo de memoria PHP (por ejemplo, 64M), la tienda puede colapsar con páginas que requieren muchos recursos.
Cómo aumentar el límite de memoria:
- Crea un archivo llamado
php.inien la raíz de tu tienda (si no existe). - Añade esta línea:
memory_limit = 256M - Guarda y sube el archivo.
[TIP]: Si tu hosting usa Syspanel, recuerda que puedes gestionar los archivos desde el panel en el puerto 2106. Busca la sección de "Gestor de archivos" y navega hasta la raíz de tu tienda.
3. Módulos incompatibles o corruptos
Los módulos son la causa número uno de errores en PrestaShop. Un módulo mal actualizado, incompatible con tu versión o que se ha corrompido parcialmente puede romper toda la tienda.
Cómo diagnosticar:
- Ve a la carpeta
/modulesde tu instalación. - Renombra la carpeta del módulo sospechoso (por ejemplo, de
ps_googleanalyticsaps_googleanalytics_BAK). - Recarga la tienda. Si el error desaparece, has encontrado al culpable.
Cómo prevenir futuros problemas:
- Actualiza siempre los módulos desde el panel de administración de PrestaShop.
- Descarga módulos solo de fuentes oficiales o de desarrolladores de confianza.
- Haz una copia de seguridad antes de instalar o actualizar cualquier módulo.
4. Problemas con la base de datos
La base de datos de PrestaShop almacena productos, pedidos, clientes y configuración. Si hay tablas corruptas, consultas demasiado pesadas o la conexión falla, obtendrás un error 500.
Pasos para verificar:
- Entra en phpMyAdmin desde el panel de tu hosting (en Syspanel, busca la sección de bases de datos).
- Selecciona la base de datos de tu tienda.
- Haz clic en "Comprobar" (o "Check") en la pestaña de operaciones.
- Si encuentras tablas con errores, selecciónalas y elige "Reparar" (Repair).
[INFO]: Si no sabes cuál es tu base de datos, revisa el archivo
config/settings.inc.php(en PrestaShop 1.6) oapp/config/parameters.php(en 1.7). Ahí encontrarás el nombre de la base de datos y el usuario.
5. Archivos .htaccess corruptos o con reglas incorrectas
El archivo .htaccess controla el reescritura de URLs, redirecciones y otros comportamientos del servidor. Si está dañado o tiene reglas incompatibles, puedes obtener errores 500.
Solución rápida:
- Accede a la raíz de tu tienda.
- Renombra
.htaccessa.htaccess_BAK. - Ve al panel de administración de PrestaShop.
- En Parámetros avanzados > Rendimiento, activa "Reescribir URLs" (si estaba activa) y guárdalo. PrestaShop regenerará un nuevo
.htaccess.
Consejos específicos para entornos de hosting compartido
Muchos clientes que contactan conmigo están en hosting compartido porque es barato y fácil de empezar. Pero tiene sus limitaciones.
Si usas Syspanel (antes HestiaCP)
Si tu hosting se gestiona con Syspanel, recuerda que el panel de control está disponible en el puerto 2106. Desde ahí puedes:
- Ver los logs de error del servidor (sección "Logs").
- Gestionar los archivos de tu tienda.
- Reiniciar servicios PHP o MySQL si es necesario.
Cómo leer los logs de error del servidor
Los logs son el diario de lo que pasa en tu servidor. Ahí verás el error exacto que provoca el problema.
- Accede al panel de control de tu hosting.
- Busca la sección de "Registros" o "Logs".
- Busca el archivo
error.logophp_error.log. - Ábrelo y busca la última entrada relacionada con tu tienda.
Ejemplo de error que podrías encontrar:
[22-Apr-2025 14:32:11] PHP Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 20480 bytes)
Ese error significa literalmente "se acabó la memoria". La solución es aumentar el límite de memoria como te expliqué antes.
Solución paso a paso para el error 500 genérico
Si has probado todo lo anterior y sigues sin saber qué pasa, aquí tienes un plan de acción ordenado:
Paso 1: Haz una copia de seguridad completa
No toques nada sin respaldo. Descarga todos los archivos de tu tienda por FTP y exporta la base de datos desde phpMyAdmin. Esto te permitirá revertir cualquier cambio.
Paso 2: Desactiva todos los módulos no esenciales
- Accede a tu base de datos con phpMyAdmin.
- Abre la tabla
ps_modules(el prefijo puede variar). - Pon el valor
0en la columnaactivepara todos los módulos excepto los esenciales (los que empiezan porps_oblock_en versiones antiguas).
[WARNING]: No toques los módulos de pago ni los de envío si no estás seguro. Pero si la tienda está caída, es mejor perder funcionalidad temporalmente que tener la tienda cerrada.
Paso 3: Regenera la caché
La caché de PrestaShop a veces se corrompe y causa errores raros.
- Borra el contenido de las carpetas
/var/cache(en PrestaShop 1.7) o/cache(en 1.6). - No borres la carpeta en sí, solo su contenido.
- Si tienes acceso al panel de administración, ve a Parámetros avanzados > Rendimiento y haz clic en "Vaciar la caché".
Paso 4: Revisa la versión de PHP
PrestaShop necesita una versión de PHP compatible. Si tu hosting actualizó PHP y tu tienda es antigua, puede que ya no sea compatible.
- PrestaShop 1.6 funciona bien con PHP 5.6 o 7.0, pero no con PHP 8.0+.
- PrestaShop 1.7 necesita PHP 7.1 como mínimo, y las versiones 1.7.8+ funcionan con PHP 8.0.
Desde el panel de tu hosting puedes cambiar la versión de PHP. En Syspanel, busca la sección de "PHP" o "Configuración de PHP" y prueba con una versión inferior si tu tienda es antigua.
Paso 5: Contacta con tu proveedor de hosting
Si nada funciona, el problema puede estar en el servidor mismo: un disco lleno, un límite de procesos alcanzado o un problema de configuración que escapa a tu control. En ese caso, abre un ticket con tu proveedor y adjunta los logs de error que hayas encontrado.
Preguntas frecuentes sobre el error 500 en PrestaShop
¿El error 500 significa que he perdido mis datos?
No. El error 500 es un error del servidor, no un borrado de datos. Tus productos, pedidos y clientes siguen en la base de datos. Solo necesitas "arreglar" la configuración o los archivos para que la tienda vuelva a funcionar.
¿Puedo evitar el error 500 en el futuro?
Sí, con estos hábitos:
- Mantén PrestaShop, módulos y temas siempre actualizados.
- Haz copias de seguridad frecuentes (diarias si vendes mucho).
- No instales módulos piratas o de dudosa procedencia.
- Revisa periódicamente los logs de error del servidor.
¿Cuánto tiempo se tarda en arreglar?
Depende del origen. Un problema de permisos se soluciona en 5 minutos. Un módulo conflictivo puede llevar 30 minutos. Si es un problema del servidor, puede tardar horas si depende del soporte del hosting.
¿Debo contratar a un profesional?
Si no te sientes cómodo tocando archivos o si la tienda es crítica para tu negocio, sí. Un profesional con experiencia en problemas PrestaShop servidor puede resolverlo en minutos lo que a ti te llevaría horas. El coste de un técnico suele ser menor que las ventas que pierdes mientras la tienda está caída.
Conclusión: no entres en pánico, actúa con método
El error 500 PrestaShop es frustrante pero casi siempre tiene solución. La clave está en diagnosticar correctamente antes de tocar nada. Recuerda el orden lógico:
- Activa el modo debug para ver el error real.
- Revisa permisos de archivos.
- Aumenta la memoria PHP si es necesario.
- Desactiva módulos sospechosos.
- Limpia la caché.
- Verifica la compatibilidad de PHP.
- Si todo falla, contacta con tu hosting.
Y sobre todo, trabaja siempre con copias de seguridad. Un pequeño descuido puede convertir un error 500 en una pérdida total de datos.
[TIP]: Guarda este artículo en tus favoritos. Cuando la tienda vuelva a funcionar, haz una copia de seguridad limpia y anota en un documento qué has cambiado. Así, si el error vuelve a aparecer, sabrás exactamente qué hacer.
Espero que estos consejos prácticos te hayan sido útiles. Si tienes alguna duda con tu caso concreto, déjala en los comentarios y te ayudaré en lo que pueda. ¡Buena suerte con tu tienda!
