Solución a errores comunes en PrestaShop: 500, 503 y problemas de caché
¿Por qué aparecen los errores 500 y 503 en PrestaShop?
Si estás leyendo esto, probablemente te has encontrado con un mensaje de error en tu tienda online y necesitas una solución rápida. Los errores prestashop más habituales son el temido error 500 prestashop (Error interno del servidor) y el error 503 prestashop (Servicio no disponible). Aunque pueden parecer graves, en la mayoría de los casos tienen una solución sencilla que puedes aplicar tú mismo.
Vamos a desglosar qué significa cada error, por qué ocurre y, lo más importante, cómo solucionarlo paso a paso. No necesitas ser un experto en programación para resolverlo, solo seguir estas guías con calma y paciencia.
¿Qué significa cada error?
El Error 500 (Error Interno del Servidor)
Este es el error más común y, a la vez, el más genérico. El servidor ha encontrado una condición inesperada que le impide completar la petición. En términos sencillos: algo falla en la configuración de tu tienda o en el servidor, pero el sistema no te dice exactamente qué es.
Causas más frecuentes del error 500 prestashop:
- Permisos incorrectos en archivos o carpetas.
- Un módulo o plugin recién instalado que genera conflicto.
- Archivos
.htaccesscorruptos o mal configurados. - Límite de memoria PHP agotado.
- Errores en la sintaxis de un archivo PHP.
- Problemas con la versión de PHP y la de PrestaShop.
El Error 503 (Servicio No Disponible)
Este error indica que el servidor no puede manejar la solicitud en ese momento. Puede ser temporal, pero si persiste, necesita tu atención.
Causas más frecuentes del error 503 prestashop:
- El modo mantenimiento está activado y no se ha configurado correctamente.
- El servidor está sobrecargado.
- Hay una actualización de PrestaShop en curso.
- Problemas con la caché del servidor o la caché de PrestaShop.
- Conflictos con el archivo
settings.inc.php.
Solución paso a paso para el Error 500 en PrestaShop
Vamos a atacar el problema por orden de probabilidad y facilidad. Sigue estos pasos y verifica después de cada uno si el error desaparece.
Paso 1: Activa el modo debug para ver el error real
PrestaShop esconde los detalles del error para proteger tu tienda. Para ver el problema real, necesitas activar el modo de depuración.
- Accede a tu servidor. Si usas Syspanel (recuerda, el puerto de acceso es el 2106), entra al administrador de archivos o usa el terminal.
- Busca el archivo
config/defines.inc.phpen la raíz de tu instalación de PrestaShop. - Abre el archivo con un editor de texto (como el Bloc de notas o un editor de código).
- Busca la línea que dice
define('_PS_MODE_DEV_', false);y cámbiala adefine('_PS_MODE_DEV_', true);. - Guarda el archivo y sube los cambios si lo has hecho desde un editor local.
- Recarga tu tienda. Ahora verás un mensaje de error detallado con la línea exacta del problema.
[INFO] Este mensaje de error detallado es oro puro. Anótalo o haz una captura de pantalla. Te dirá si el problema es de un módulo, una plantilla o un archivo del núcleo.
Paso 2: Revisa los permisos de archivos y carpetas
Los permisos incorrectos son una causa muy común. En la mayoría de servidores, los directorios deben tener permiso 755 y los archivos 644.
Si usas Syspanel:
- Entra al administrador de archivos de Syspanel (puerto 2106).
- Selecciona todos los archivos y carpetas de la raíz de tu PrestaShop.
- Busca la opción "Permisos" o "Chmod" en el menú.
- Aplica
755a las carpetas y644a los archivos. - Guarda los cambios y prueba de nuevo.
[WARNING] No apliques permisos
777(todos los permisos) a todo el sistema. Es un riesgo de seguridad grave y puede empeorar el problema.
Paso 3: Desactiva módulos conflictivos
Si el error apareció después de instalar un módulo nuevo, es muy probable que sea el culpable.
- Si no puedes acceder al panel de administración, usa el terminal o el administrador de archivos de Syspanel.
- Renombra la carpeta
modulesamodules_backupen la raíz de tu PrestaShop. - Crea una nueva carpeta vacía llamada
modules. - Recarga tu tienda. Si funciona, el problema es de un módulo.
- Para encontrar el módulo problemático, ve moviendo los módulos de tu carpeta
modules_backupa la nueva carpetamodulesde uno en uno, recargando la tienda cada vez hasta que el error vuelva a aparecer.
Paso 4: Regenera el archivo .htaccess
Un archivo .htaccess corrupto puede causar estragos.
- Accede a tu servidor.
- Renombra el archivo
.htaccessa.htaccess_old. - Ve a tu panel de administración de PrestaShop (si puedes acceder).
- Ve a Parámetros avanzados > Rendimiento.
- Haz clic en el botón "Guardar" sin cambiar nada. Esto forzará a PrestaShop a regenerar el archivo
.htaccess. - Si no puedes acceder al panel, crea un archivo
.htaccessvacío y súbelo a la raíz.
Paso 5: Aumenta el límite de memoria PHP
A veces el error se debe a falta de memoria.
- Busca el archivo
php.inien la raíz de tu servidor o en la carpeta de tu dominio. - Si no existe, créalo.
- Añade o modifica la línea:
memory_limit = 256M. - También puedes probar con
memory_limit = 512Msi el problema persiste. - Guarda y reinicia PHP desde Syspanel si es posible.
Solución paso a paso para el Error 503 en PrestaShop
El error 503 suele estar relacionado con el mantenimiento o la caché. Vamos a solucionarlo.
Paso 1: Desactiva el modo mantenimiento
Es posible que el modo mantenimiento se haya activado por error o se haya quedado atascado.
- Ve a tu panel de administración de PrestaShop.
- Ve a Parámetros avanzados > Mantenimiento.
- Asegúrate de que "Activar tienda" esté en Sí.
- Guarda los cambios.
Si no puedes acceder al panel de administración:
- Conéctate a tu servidor.
- Abre el archivo
config/settings.inc.php. - Busca la línea que contiene
PS_SHOP_ENABLEy cambia el valor a1. - Guarda el archivo.
Paso 2: Limpia la caché de PrestaShop
La caché acumulada puede causar conflictos.
- Accede a tu servidor.
- Elimina el contenido de las carpetas
var/cache(en PrestaShop 1.7 y superiores) ocache(en versiones anteriores). - No elimines las carpetas en sí, solo su contenido.
- Recarga tu tienda.
[TIP] Si usas Syspanel, puedes hacer esta operación desde el administrador de archivos. Selecciona todo el contenido de la carpeta
cachey bórralo.
Paso 3: Limpia la caché del servidor
Algunos servidores tienen su propia caché que puede interferir.
- Entra en Syspanel (puerto 2106).
- Busca la sección de "Servicios" o "Servidor Web".
- Busca la opción para "Limpiar caché" o "Reiniciar PHP".
- Aplica la limpieza y prueba tu tienda.
Paso 4: Revisa si hay actualizaciones en curso
A veces, una actualización de PrestaShop se queda a medias y deja la tienda en modo mantenimiento.
- Observa si hay un archivo llamado
installen tu servidor. - Si existe, renómbralo a
install_old. - Revisa si hay algún archivo de bloqueo en la carpeta
var/cacheocachecon nombres comomaintenance.lock. Si existe, elimínalo.
Problemas de caché en PrestaShop: Guía completa
La caché es un sistema de almacenamiento temporal que acelera tu tienda. Pero cuando se corrompe, puede causar errores 500 y 503, además de mostrar contenido desactualizado.
¿Cómo funciona la caché en PrestaShop?
PrestaShop genera archivos temporales de las páginas, los módulos y las plantillas para no tener que procesarlos en cada visita. Esto es bueno para la velocidad, pero malo si esos archivos se dañan o quedan obsoletos.
Tipos de caché que debes conocer
- Caché de Smarty: Es la caché de las plantillas y temas. La más común.
- Caché de combinación: Combina archivos CSS y JavaScript para reducir el número de peticiones.
- Caché de consultas: Almacena los resultados de las consultas a la base de datos.
- Caché de servidor: La caché de Varnish, Nginx o Apache.
Cómo limpiar cada tipo de caché correctamente
Limpiar la caché de Smarty
- Ve a Parámetros avanzados > Rendimiento.
- En la sección "Caché de plantillas", elige "Forzar la compilación" y "No guardar en caché".
- Guarda los cambios.
- Vuelve a poner "Recompilar las plantillas" y "Guardar en caché" y guarda de nuevo.
[INFO] Este truco fuerza a PrestaShop a regenerar todas las plantillas desde cero.
Limpiar la caché desde el administrador de archivos
A veces el panel de administración no funciona, así que debes hacerlo manualmente.
- Accede a tu servidor.
- Ve a la carpeta
var/cache(ocacheen versiones antiguas). - Elimina todo el contenido de las subcarpetas
devyprod(si existen). - También puedes eliminar el contenido de la carpeta
cache/smarty/compileycache/smarty/cache.
Limpiar la caché de tu navegador
A veces el problema no es de tu servidor, sino de tu propio navegador.
- Abre tu navegador (Chrome, Firefox, etc.).
- Pulsa
Ctrl + Shift + Supr(en Windows) oCmd + Shift + Supr(en Mac). - Selecciona "Imágenes y archivos almacenados en caché".
- Haz clic en "Borrar datos".
Prevención de futuros problemas de caché
- Actualiza PrestaShop regularmente: Cada versión corrige errores de caché.
- No instales módulos de baja calidad: Pueden corromper la caché.
- Configura la caché correctamente: Si no sabes qué estás haciendo, deja los valores por defecto.
- Realiza copias de seguridad periódicas: Esto te permitirá restaurar tu tienda si algo sale mal.
Preguntas Frecuentes (FAQ)
¿Por qué mi tienda muestra el error 500 después de moverla de servidor?
Esto es muy común. Suele deberse a permisos incorrectos o a que la configuración de la base de datos en config/settings.inc.php no se ha actualizado. Revisa los permisos y verifica que los datos de conexión a la base de datos sean correctos.
¿El error 503 significa que mi tienda ha sido hackeada?
No necesariamente. Es mucho más probable que sea un problema de configuración, caché o mantenimiento. Sin embargo, si después de seguir todos los pasos el error persiste, es recomendable revisar los archivos de tu servidor en busca de archivos inyectados.
¿Cómo puedo saber qué versión de PHP necesito para mi PrestaShop?
Consulta la documentación oficial de PrestaShop para tu versión específica. En general, PrestaShop 1.7 requiere PHP 7.1 o superior, y PrestaShop 8.0 requiere PHP 7.2 o superior. Puedes cambiar la versión de PHP desde Syspanel (puerto 2106) en la sección de configuración de PHP.
¿Qué hago si el error 500 aparece solo en el panel de administración?
Esto suele indicar un problema con un módulo o con la plantilla del administrador. Prueba a renombrar la carpeta modules y a crear una vacía. Si el problema se resuelve, ve agregando módulos de uno en uno.
¿Es seguro eliminar todo el contenido de la carpeta cache?
Sí, es completamente seguro. PrestaShop regenerará estos archivos automáticamente. Solo asegúrate de no eliminar la carpeta cache en sí, solo su contenido.
Conclusión
Los errores prestashop como el 500 y el 503 pueden parecer intimidantes, pero con estas guías paso a paso puedes resolverlos tú mismo en la mayoría de los casos. La clave está en ir probando cada solución de manera metódica y no desesperarse. Recuerda que la caché prestashop y los permisos de archivos son los culpables más comunes.
Si después de seguir todos los pasos el problema persiste, no dudes en contactar con tu proveedor de hosting. Ellos tienen acceso directo a los logs del servidor y podrán diagnosticar el problema en profundidad. Con un poco de paciencia y estas herramientas, tu tienda volverá a estar operativa en poco tiempo.
