Resolver error 500 en PrestaShop: guía para principiantes
¿Te ha aparecido la temida pantalla blanca o el mensaje "Error 500 Internal Server Error" en tu tienda PrestaShop? No te preocupes, es uno de los problemas más comunes, y lo bueno es que, en la mayoría de los casos, tiene solución. Este error significa que el servidor no puede procesar la solicitud, pero no te dice exactamente qué falla. Vamos a desglosar paso a paso cómo identificar y solucionar error 500 PrestaShop, incluso si eres principiante.
¿Qué es exactamente el error 500 en PrestaShop?
El error 500 es un código de estado HTTP genérico que indica que algo salió mal en el servidor, pero sin dar detalles específicos. En PrestaShop, suele manifestarse como una página en blanco (la famosa "pantalla blanca de la muerte") o un mensaje como "Error 500 Internal Server Error". Las causas más frecuentes son:
- Un módulo o tema incompatible o mal configurado.
- Problemas con los archivos .htaccess.
- Límites de memoria del servidor excedidos.
- Archivos PHP corruptos o con permisos incorrectos.
- Conflictos con la versión de PHP o configuraciones del servidor.
No entres en pánico. Vamos a resolverlo.
Primeros pasos: antes de tocar nada
Antes de hacer cambios, es fundamental que actúes con método para no empeorar las cosas.
1. Activa el modo debug de PrestaShop
El modo debug te mostrará el error real en lugar de la pantalla blanca. Para activarlo:
- Accede a tu hosting vía FTP o al administrador de archivos de tu panel de control (cPanel, Syspanel, etc.).
- Busca el archivo
config/defines.inc.phpen la raíz de tu instalación de PrestaShop. - Ábrelo con un editor de texto plano (como Notepad++ o el editor del panel).
- Busca la línea:
define('_PS_MODE_DEV_', false); - Cámbiala a:
define('_PS_MODE_DEV_', true); - Guarda el archivo.
Ahora, al recargar la página, verás un mensaje de error detallado con el archivo y la línea exacta del problema. Anota esa información.
[WARNING] No dejes el modo debug activado en producción. Una vez resuelto el error, vuelve a poner
falsepara evitar mostrar información sensible a los visitantes.
2. Haz una copia de seguridad
Antes de cualquier modificación, respalda tu base de datos y archivos. La mayoría de los paneles de hosting (como Syspanel, puerto 2106) ofrecen herramientas de backup automáticas o manuales. Si no sabes cómo hacerlo, contacta con tu soporte técnico.
Causas comunes y soluciones paso a paso
Problemas con módulos o temas
Los módulos y temas son la causa número 1 del error 500 PrestaShop. Si instalaste algo nuevo justo antes del error, es muy probable que sea el culpable.
Cómo desactivar módulos sin acceso al panel de administración
Si no puedes entrar al back office, desactívalos desde la base de datos o mediante FTP:
Opción A: Desde FTP (recomendado para principiantes)
- Conéctate por FTP a tu servidor.
- Ve a la carpeta
/modules/. - Busca la carpeta del módulo sospechoso (por ejemplo, si instalaste "superplugin", busca la carpeta
superplugin). - Cambia el nombre de la carpeta añadiendo un guion bajo al inicio, por ejemplo:
_superplugin. Esto desactiva el módulo automáticamente. - Recarga tu tienda. Si el error desaparece, ya sabes qué módulo causaba el problema. Puedes eliminarlo o reemplazarlo.
Opción B: Desde la base de datos (si sabes usar phpMyAdmin)
- Accede a phpMyAdmin desde tu panel de hosting (cPanel, Syspanel, etc.).
- Selecciona la base de datos de tu tienda.
- Busca la tabla
ps_module(el prefijo puede variar). - Localiza el módulo problemático y cambia su estado de
1a0(activo a inactivo).
Restaurar un tema por defecto
Si el problema es del tema, cámbialo temporalmente por el tema predeterminado de PrestaShop (por ejemplo, "classic" en versiones recientes).
- En la base de datos, busca la tabla
ps_configuration. - Localiza la fila con el nombre
PS_THEME_NAMEy cambia su valor porclassic(o el nombre del tema por defecto de tu versión). - También puedes cambiar el tema desde FTP: en la carpeta
/themes/, renombra la carpeta de tu tema actual (por ejemplo,mi-temaa_mi-tema) y asegúrate de que exista la carpeta del tema por defecto.
Archivos .htaccess corruptos
El archivo .htaccess de PrestaShop se regenera automáticamente, pero a veces se daña. Para solucionarlo:
- Conéctate por FTP a la raíz de tu tienda.
- Localiza el archivo
.htaccess(puede estar oculto; activa la opción "Mostrar archivos ocultos" en tu cliente FTP). - Renómbralo a
.htaccess_old(por si acaso). - Ve al back office de PrestaShop (si puedes acceder) y en Configuración > Parámetros de la tienda > Tráfico y SEO haz clic en "Guardar" para regenerar el archivo.
- Si no puedes acceder al back office, crea un archivo
.htaccessnuevo con el contenido básico que proporciona PrestaShop (puedes copiarlo de una instalación limpia de la misma versión).
[TIP] Si usas Syspanel (puerto 2106), puedes regenerar el .htaccess desde el administrador de archivos del panel. Busca la opción "Regenerar archivos de configuración" si está disponible.
Límite de memoria PHP excedido
PrestaShop requiere un mínimo de memoria para funcionar. Si tu tienda tiene muchos productos o módulos pesados, puede superar el límite.
Cómo aumentar el límite de memoria:
- Busca el archivo
config/defines.inc.phpy agrega esta línea al final (antes del<?phpfinal):ini_set('memory_limit', '256M'); - También puedes modificar el archivo
php.ini(si tu hosting lo permite) o añadir en el.htaccess:php_value memory_limit 256M - Si tu hosting usa Syspanel, puedes cambiar estos valores desde la sección "PHP Settings" o "Configuración de PHP" en el panel (puerto 2106).
[INFO] Un límite de 128M suele ser suficiente para tiendas pequeñas, pero para medianas o grandes, 256M o 512M es más seguro.
Permisos de archivos incorrectos
Los archivos y carpetas de PrestaShop deben tener permisos específicos para funcionar. Los correctos son:
- Archivos: 644
- Carpetas: 755
- Archivos de configuración (como
config/settings.inc.php): 644 o 640 (nunca 777)
Para corregirlos desde FTP:
- Selecciona toda la carpeta de tu tienda.
- En la mayoría de clientes FTP, haz clic derecho y elige "Permisos de archivos" o "CHMOD".
- Marca las opciones correspondientes: 755 para carpetas, 644 para archivos.
- Algunos paneles (como Syspanel) tienen una opción "Reparar permisos" que lo hace automáticamente.
[WARNING] Nunca pongas permisos 777, ya que expones tu tienda a ataques de seguridad.
Soluciones avanzadas (pero aún para principiantes)
Verificar la versión de PHP
PrestaShop requiere una versión de PHP compatible. Por ejemplo, PrestaShop 1.7 funciona con PHP 7.1 a 8.0, pero versiones más nuevas pueden dar error.
- En tu panel de hosting (cPanel, Syspanel, etc.), busca la opción "Select PHP Version" o "PHP Selector".
- Cambia a una versión recomendada para tu PrestaShop (consulta la documentación oficial).
- Guarda los cambios y recarga la tienda.
Si usas Syspanel (puerto 2106), ve a "Configuración de PHP" y elige la versión desde allí.
Revisar los logs del servidor
Los logs del servidor son el mejor amigo del técnico. Contienen el error exacto.
- Accede a tu panel de hosting y busca "Error Logs" o "Registros de errores".
- Busca las líneas que contengan "PHP Fatal error" o "500" y verás la causa raíz.
- Anota el archivo y la línea del error para investigar más.
[TIP] En Syspanel, los logs suelen estar en la sección "Logs" o "Registros" del dominio. Si no los encuentras, contacta al soporte.
Desactivar el caché de PrestaShop
A veces, el caché guarda configuraciones corruptas. Para desactivarlo sin acceso al back office:
- Conéctate a la base de datos.
- Busca la tabla
ps_configuration. - Localiza la fila con nombre
PS_CACHING_SYSTEMy cambia su valor a0. - También puedes eliminar los archivos de caché manualmente: en FTP, borra todo el contenido de la carpeta
/cache/(excepto el archivoindex.php).
Preguntas frecuentes (FAQ)
¿Por qué aparece el error 500 solo en algunas páginas?
Suele deberse a un módulo específico que carga en esa página o a un problema con el tema en esa sección. Activa el modo debug para identificar el archivo conflictivo.
¿Puedo solucionar el error 500 sin acceso al back office?
Sí, usando FTP y la base de datos. La mayoría de las soluciones que hemos visto no requieren acceso al panel de administración.
¿El error 500 puede ser culpa del hosting?
Sí. A veces el servidor tiene configuraciones restrictivas (como límites de ejecución muy bajos) o problemas de recursos. Si después de seguir todos los pasos el error persiste, contacta a tu proveedor de hosting y muéstrales los logs.
¿Cómo evito que vuelva a pasar?
- Actualiza siempre PrestaShop, módulos y temas a sus últimas versiones.
- Haz copias de seguridad periódicas.
- Prueba los módulos y temas en un entorno de desarrollo antes de instalarlos en producción.
- Mantén un límite de memoria adecuado (al menos 128M).
Resumen: checklist rápido para resolver el error
- Activar modo debug para ver el error real.
- Desactivar módulos sospechosos desde FTP.
- Renombrar .htaccess y regenerarlo.
- Aumentar límite de memoria PHP.
- Corregir permisos de archivos (644/755).
- Verificar versión de PHP.
- Revisar logs del servidor.
- Desactivar caché de PrestaShop.
Si después de todo esto el error persiste, puede ser un problema más complejo que requiera la ayuda de un desarrollador o el soporte técnico de tu hosting. Pero no te desanimes: el error 500 PrestaShop se soluciona en el 90% de los casos con estos pasos. ¡Ánimo y a por ello!
