Cómo arreglar el error 500 en PrestaShop (Guía paso a paso)
¡Hola! Si estás leyendo esto, seguramente te has encontrado con la temida pantalla blanca o el mensaje "Error 500" en tu tienda PrestaShop. No te preocupes, es uno de los problemas más comunes en el mundo del hosting y el ecommerce, y la buena noticia es que tiene solución.
En esta guía paso a paso, vamos a desglosar, de forma sencilla y sin tecnicismos innecesarios, cómo arreglar el error 500 prestashop. Vamos a ir desde lo más básico (como limpiar la caché) hasta lo más técnico (como editar archivos de configuración). Respira hondo, coge un café y vamos a ello.
¿Qué es exactamente el Error 500 en PrestaShop?
Antes de lanzarnos a arreglar nada, es importante entender qué significa este error. El Error 500 o "Internal Server Error" es un mensaje genérico que lanza el servidor cuando algo ha fallado internamente, pero no puede especificar exactamente qué es.
Imagina que el servidor es un restaurante. Si en la cocina se quema la comida, el camarero no te va a decir "se ha quemado el filete", sino que te dirá "lo sentimos, hay un problema en la cocina". Eso es el Error 500: un problema en la cocina de tu web.
Las causas más habituales suelen ser:
- Archivos corruptos o incompletos tras una actualización de PrestaShop o de un módulo.
- Problemas de permisos en archivos o carpetas (el servidor no puede leer o escribir).
- Errores de sintaxis en archivos de configuración como
.htaccessosettings.inc.php. - Memoria PHP insuficiente (límite de memoria agotado).
- Conflictos entre módulos o temas incompatibles.
- Problemas con el archivo
.htaccessdespués de un cambio de URL o de activar el SSL.
Vamos a atacar cada uno de estos frentes.
Paso 1: Activa el Modo Debug de PrestaShop (La Clave)
Para no trabajar a ciegas, lo primero que necesitas es que PrestaShop te diga qué está fallando. Por defecto, el error 500 es muy "tímido" y no da detalles. Pero PrestaShop tiene un "modo desarrollador" que muestra el error exacto.
Para activarlo, necesitas editar un archivo llamado defines.inc.php. No te asustes, es más fácil de lo que parece.
### Cómo editar el archivo defines.inc.php
- Accede a tu hosting mediante FTP (con un programa como FileZilla) o a través del Administrador de Archivos de tu panel de control (cPanel, Syspanel, etc.).
- Navega hasta la carpeta raíz de tu PrestaShop (normalmente
public_htmlowww). - Dentro, busca la carpeta
configy entra en ella. - Localiza el archivo llamado
defines.inc.php. - Haz clic derecho y selecciona "Editar" o "Ver/Editar". Se abrirá un editor de texto.
- Busca la línea que dice
define('_PS_MODE_DEV_', false);. - Cambia la palabra
falseportrue. Quedará así:define('_PS_MODE_DEV_', true);. - Guarda los cambios y sube el archivo de vuelta si estabas usando FTP.
Ahora, recarga tu tienda. Verás un mensaje de error mucho más detallado, con una ruta de archivo y un número de línea. Anota ese mensaje, ya que te dirá exactamente dónde está el problema.
[WARNING] Recuerda que este modo de depuración muestra información sensible. Una vez hayas arreglado el error, vuelve a cambiar
trueporfalsepara desactivarlo.
Paso 2: Limpia la Caché de PrestaShop
A veces, el error 500 es simplemente un problema de caché corrupta. PrestaShop guarda archivos temporales para acelerar la carga, pero si estos archivos se dañan (por ejemplo, durante una actualización), pueden causar un error 500.
### Limpieza manual desde el panel de administración
Si puedes acceder al back-office (el panel de administración de tu tienda), este es el método más fácil:
- Ve a Parámetros avanzados > Rendimiento.
- Busca la opción "Vaciar la caché".
- Haz clic en el botón correspondiente (suele ser un icono de papelera o un botón azul que dice "Vaciar la caché").
### Limpieza manual vía FTP
Si no puedes acceder al panel de administración, tendrás que hacerlo a mano:
- Conecta por FTP a tu hosting.
- Navega hasta la carpeta
var/cache(en PrestaShop 1.7 y 1.8) ocache(en versiones antiguas). - Dentro, encontrarás carpetas con nombres como
dev,prodoclass_index.php. - Borra todo el contenido de la carpeta
cache(ovar/cache), pero no borres la carpeta en sí. - Recarga tu tienda.
[TIP] Es posible que necesites crear un archivo vacío llamado
index.phpen esas carpetas si las borras por completo, para evitar problemas de seguridad. Pero si solo borras el contenido, no debería haber problema.
Paso 3: Revisa y Corrige el Archivo .htaccess
El archivo .htaccess es un archivo de configuración que controla el comportamiento del servidor. Un error de sintaxis aquí puede provocar un error 500. A menudo, este archivo se corrompe después de cambiar la URL de la tienda o activar el SSL.
### Regenerar el .htaccess
La forma más segura de "arreglarlo" es regenerarlo desde el panel de administración:
- Ve a Parámetros avanzados > Rendimiento.
- En la sección "Archivo .htaccess", haz clic en el botón "Guardar" o "Regenerar" (dependiendo de la versión, puede ser un botón que dice "Actualizar").
- Esto creará un nuevo archivo
.htaccesscon las reglas correctas.
### Editar el .htaccess manualmente
Si no puedes acceder al panel, puedes crear un archivo .htaccess nuevo:
- Conecta por FTP.
- Busca el archivo
.htaccessen la raíz de tu instalación. - Descárgalo y haz una copia de seguridad en tu ordenador (por si acaso).
- Ábrelo con un editor de texto (como Bloc de notas) y revisa si hay líneas corruptas o caracteres extraños.
- Si ves algo raro, puedes renombrar el archivo a
.htaccess_olden el servidor. Esto desactivará las reglas. - Intenta acceder a tu tienda. Si ahora funciona, el problema era el
.htaccess. - Para regenerarlo, accede al panel de administración y sigue el paso anterior (Parámetros avanzados > Rendimiento > Guardar).
[INFO] Si tu tienda funciona con el
.htaccessrenombrado pero no puedes entrar al panel, contacta con tu proveedor de hosting. Ellos pueden regenerarlo por ti desde el servidor.
Paso 4: Aumenta el Límite de Memoria PHP
Otro culpable muy común del prestashop error 500 solucion es que el script necesita más memoria de la que el servidor le permite usar. Esto es especialmente común si tienes muchos módulos activos o una base de datos muy grande.
Para aumentar el límite de memoria, necesitas modificar un archivo llamado php.ini o el archivo settings.inc.php de PrestaShop.
### Método 1: Modificar el php.ini
- Busca un archivo llamado
php.inien tu carpeta raíz o en una carpetaphpdentro de tu hosting. - Si no existe, créalo con un editor de texto.
- Añade o modifica esta línea:
(Puedes usar 256M, 512M o incluso 1024M si tu hosting lo permite).memory_limit = 256M
### Método 2: Modificar el settings.inc.php
Si no puedes modificar el php.ini, puedes forzar la memoria desde PrestaShop:
- Conecta por FTP y busca la carpeta
config. - Abre el archivo
settings.inc.php. - Añade esta línea justo después de la línea que dice
<?php:ini_set('memory_limit', '256M'); - Guarda y sube el archivo.
[WARNING] No todos los hostings permiten aumentar la memoria. Si tu plan es muy básico, es posible que tengas que contactar con tu proveedor (Syspanel, cPanel, etc.) para que te lo aumenten o actualizar tu plan.
Paso 5: Revisa los Permisos de Archivos y Carpetas
Los permisos incorrectos son otra causa frecuente. Si un archivo tiene permisos de lectura pero no de escritura (o viceversa), el servidor puede lanzar un error 500.
### Permisos recomendados para PrestaShop
- Carpetas: 755
- Archivos: 644
- Archivos de configuración (
config/settings.inc.php): 444 (solo lectura) o 644.
### Cómo cambiar los permisos
- Conecta por FTP.
- Selecciona la carpeta raíz de tu tienda.
- Haz clic derecho y selecciona "Permisos de archivo" o "CHMOD".
- Introduce el valor
755para carpetas y644para archivos. - Marca la opción "Aplicar a subcarpetas" y "Aplicar a archivos" si tu programa FTP te lo permite.
[TIP] Si estás usando Syspanel (HestiaCP) para gestionar tu hosting, puedes usar el Administrador de Archivos integrado. Para acceder a él, entra en tu panel de control en el puerto 2106 (ej:
https://tu-dominio.com:2106), busca la sección de archivos y ahí podrás cambiar los permisos fácilmente.
Paso 6: Desactiva Módulos o Temas Conflictivos
Si el error 500 apareció después de instalar un nuevo módulo o tema, es muy probable que ese sea el problema. Si no puedes acceder al panel de administración, tendrás que desactivarlos manualmente.
### Desactivar un módulo vía FTP
- Conecta por FTP y navega hasta la carpeta
modules. - Busca la carpeta del módulo que crees que está causando el problema.
- Renombra la carpeta del módulo. Por ejemplo, si el módulo se llama
blocknewsletter, renómbralo ablocknewsletter_old. - Recarga tu tienda. Si el error desaparece, ¡ese era el problema!
### Desactivar el tema actual
- Conecta por FTP y navega hasta la carpeta
themes. - Dentro, verás la carpeta de tu tema (por ejemplo,
classic). - Renombra esa carpeta a
classic_old. - PrestaShop debería intentar cargar un tema por defecto. Si no lo hace, tendrás que subir un tema nuevo temporalmente (puedes descargar el tema por defecto de PrestaShop).
[WARNING] Este método es un poco "bruto" y puede romper la maquetación de tu tienda temporalmente, pero es una forma efectiva de aislar el problema.
Paso 7: Verifica los Archivos de PrestaShop (Integridad)
A veces, una actualización fallida puede dejar archivos incompletos o corruptos. La mejor solución es reemplazar los archivos del núcleo de PrestaShop.
- Descarga la misma versión de PrestaShop que tienes instalada desde el sitio oficial de PrestaShop o desde el área de descargas de tu hosting.
- Descomprime el archivo en tu ordenador.
- Conecta por FTP y sube todos los archivos y carpetas de la descarga, sobrescribiendo los existentes en tu servidor.
- IMPORTANTE: No subas la carpeta
configni la carpetaimgsi quieres conservar tu configuración y tus imágenes. Sube solo los archivos de las carpetasadmin,classes,controllers,src,vendor,themes(si no usas un tema personalizado) y los archivos.phpde la raíz.
[INFO] Este proceso es similar a "reinstalar" el sistema operativo de tu tienda, pero sin tocar tus datos (base de datos). Es una solución muy efectiva para errores 500 persistentes.
Paso 8: Contacta con tu Proveedor de Hosting
Si has llegado hasta aquí y el error 500 persiste, es hora de pedir ayuda profesional. El problema puede estar en el servidor, no en tu tienda.
- Errores en el log del servidor: Tu hosting puede revisar los logs de error del servidor para encontrar el problema exacto.
- Errores de PHP: Es posible que tu versión de PHP no sea compatible con tu versión de PrestaShop. Ellos pueden cambiar la versión de PHP desde el panel de control.
- Problemas de base de datos: Puede que la base de datos esté corrupta o haya alcanzado su límite de tamaño.
Contacta con ellos y diles que has seguido estos pasos y que necesitas que revisen los logs del servidor.
Preguntas Frecuentes (FAQ)
### ¿El error 500 significa que he perdido mis datos?
No, en absoluto. El error 500 es un problema del servidor o de los archivos, no de tu base de datos. Tus productos, clientes y pedidos están a salvo.
### ¿Cuánto tiempo se tarda en arreglar un error 500?
Depende de la causa. Si es un problema de caché, se arregla en 5 minutos. Si es un conflicto de módulos, puede llevar 30 minutos. Si es un problema del servidor, puede tardar más, dependiendo de tu hosting.
### ¿Puedo prevenir el error 500 en el futuro?
Sí, con estos hábitos:
- Mantén PrestaShop, módulos y temas actualizados.
- Haz copias de seguridad de archivos y base de datos regularmente.
- Desactiva los módulos que no uses.
- No instales módulos de fuentes no confiables.
### ¿Qué es Syspanel y cómo me ayuda?
Syspanel (basado en HestiaCP) es el panel de control que ofrecemos en nuestros planes de hosting. Es tu centro de gestión donde puedes gestionar tus dominios, bases de datos, cuentas de correo y, lo más importante para este problema, el Administrador de Archivos y el Log de Errores. Puedes acceder a él a través de la URL https://tu-dominio.com:2106. Es una herramienta muy visual e intuitiva que te facilitará mucho el diagnóstico y la solución de este tipo de errores.
Conclusión
El error 500 prestashop puede parecer aterrador, pero como has visto, es un problema con solución y, en la mayoría de los casos, no es grave. Hemos recorrido los pasos más efectivos: desde activar el modo debug para obtener información, pasando por limpiar la caché, regenerar el .htaccess, aumentar la memoria PHP, hasta desactivar módulos conflictivos.
La clave es ir paso a paso, con paciencia y sin prisas. Empieza siempre por lo más sencillo (caché y permisos) y ve subiendo en complejidad. Si en cualquier momento te sientes perdido, no dudes en contactar con el soporte técnico de tu hosting, para eso estamos.
Esperamos que esta guía te haya sido de gran ayuda. ¡Nos vemos en el próximo tutorial!
