Cómo solucionar el error 500 en PrestaShop (hosting y servidores)
¿Qué es el error 500 en PrestaShop y por qué aparece?
El error 500 PrestaShop, también conocido como "Error interno del servidor", es uno de los avisos más temidos por cualquier dueño de una tienda online. La buena noticia es que, en la mayoría de los casos, solucionar error 500 es más sencillo de lo que parece, incluso si no eres una persona técnica.
Este error significa que el servidor donde está alojada tu tienda ha encontrado un problema interno que le impide procesar la solicitud. Es decir, el servidor "se ha atascado" y no sabe cómo responder. Las causas pueden ser muy variadas: desde un archivo con permisos incorrectos, hasta un módulo incompatible o un problema de memoria en el hosting.
Cuando hablamos de PrestaShop error 500 hosting, lo primero que debes saber es que el problema casi nunca está en tu ordenador o en tu conexión a internet. El fallo está en la comunicación entre tu tienda y el servidor que la aloja. Por eso, para arreglar error 500, necesitamos trabajar directamente con los archivos y la configuración de tu hosting.
Antes de entrar en materia, respira hondo. Este error tiene solución en el 99% de los casos. A continuación, te voy a guiar paso a paso, con un lenguaje claro y sin tecnicismos innecesarios, para que puedas recuperar tu tienda cuanto antes.
Paso 1: Activa el modo debug para ver el error real
El primer paso para solucionar error 500 es descubrir qué está fallando exactamente. PrestaShop tiene una herramienta llamada "modo debug" que muestra el error específico en lugar de la página genérica de error 500.
Cómo activar el modo debug
Para activar el modo debug, necesitas acceder a los archivos de tu tienda a través del panel de control de tu hosting o mediante FTP. Te explico cómo hacerlo:
- Accede a tu panel de hosting (cPanel, Plesk, o el que uses) y busca el administrador de archivos.
- Localiza la carpeta raíz de tu PrestaShop (normalmente se llama
public_htmlowww). - Busca el archivo llamado
config/defines.inc.phpy ábrelo con el editor de texto del panel. - Busca la línea que dice
define('_PS_MODE_DEV_', false);y cambiafalseportrue. - Guarda el archivo y recarga tu tienda.
[INFO] Si no encuentras el archivo
defines.inc.php, es posible que tu PrestaShop esté en una versión más reciente. En ese caso, busca el archivoconfig/config.inc.phpy añade al final:define('_PS_MODE_DEV_', true);
Ahora, al recargar tu tienda, verás un mensaje de error mucho más descriptivo. Anota el texto exacto, ya que te dirá qué archivo o qué función está causando el problema. Una vez que tengas esa información, puedes continuar con los siguientes pasos.
[WARNING] No olvides volver a poner
falsecuando termines de arreglar el error. Dejar el modo debug activado en una tienda en producción es un riesgo de seguridad grave.
Paso 2: Comprueba los permisos de archivos y carpetas
Otra causa muy común del error 500 PrestaShop son los permisos incorrectos en archivos o carpetas. Cada archivo de tu tienda tiene un "código de permisos" que indica quién puede leer, escribir o ejecutar. Si estos permisos están mal configurados, el servidor no puede acceder a los archivos necesarios y lanza el error.
Permisos correctos para PrestaShop
Los permisos correctos para una instalación estándar de PrestaShop son:
- Archivos: 644 (lectura y escritura para el propietario, lectura para el resto)
- Carpetas: 755 (lectura, escritura y ejecución para el propietario, lectura y ejecución para el resto)
Cómo cambiar los permisos
- Accede al administrador de archivos de tu hosting.
- Selecciona todos los archivos y carpetas de tu tienda (Ctrl+A o Cmd+A).
- Busca la opción "Permisos" o "Permissions" en el menú superior.
- Introduce el valor 644 para archivos y 755 para carpetas (o usa la opción de "aplicar a subcarpetas").
- Guarda los cambios y recarga tu tienda.
[TIP] Si tu hosting usa Syspanel (antes conocido como HestiaCP), puedes acceder al administrador de archivos desde el panel. Recuerda que la URL de acceso a Syspanel es
https://tu-dominio:2106. Una vez dentro, busca la sección "Archivos" y sigue los mismos pasos.
Paso 3: Aumenta el límite de memoria PHP
En muchas ocasiones, el PrestaShop fallo servidor se debe a 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 si tu catálogo de productos es muy grande.
Cómo aumentar el límite de memoria
El límite de memoria se configura en el archivo php.ini o, si no tienes acceso a él, mediante un archivo .htaccess. Te muestro ambas opciones:
Opción A: Modificar el archivo .htaccess
- Accede al administrador de archivos y busca el archivo
.htaccessen la raíz de tu tienda. - Ábrelo con el editor de texto y añade estas líneas al final:
php_value memory_limit 256M
php_value max_execution_time 300
- Guarda el archivo y recarga tu tienda.
Opción B: Crear o modificar php.ini
- Crea un archivo llamado
php.inien la carpeta raíz de tu tienda. - Añade estas líneas:
memory_limit = 256M
max_execution_time = 300
- Guarda el archivo y recarga tu tienda.
[WARNING] Si el error persiste después de aumentar la memoria, es posible que tu plan de hosting no tenga suficientes recursos. En ese caso, contacta con tu proveedor de hosting y pregúntales si puedes aumentar la memoria del plan o si necesitas migrar a un plan superior.
Paso 4: Desactiva módulos recientes o conflictivos
Los módulos son extensiones que añaden funcionalidades a tu PrestaShop, pero también son una de las causas más frecuentes del error 500 PrestaShop. Si has instalado un módulo recientemente o has actualizado alguno, ese puede ser el culpable.
Cómo desactivar módulos sin acceder al panel
Si el error 500 te impide entrar al panel de administración, puedes desactivar los módulos manualmente:
- Accede al administrador de archivos de tu hosting.
- Navega hasta la carpeta
modulesen la raíz de tu tienda. - Busca el módulo que instalaste recientemente o el que sospeches que causa el problema.
- Renombra la carpeta del módulo añadiendo
_backupal final (por ejemplo,moduloproblema_backup). - Recarga tu tienda. Si el error desaparece, has encontrado al culpable.
Cómo desactivar todos los módulos de golpe
Si no sabes cuál es el módulo problemático, puedes desactivarlos todos a la vez:
- Accede a tu base de datos a través del panel de hosting (phpMyAdmin, por ejemplo).
- Busca la tabla
ps_module(el prefijo puede variar si lo cambiaste durante la instalación). - Ejecuta la siguiente consulta SQL:
UPDATE ps_module SET active = 0;
- Recarga tu tienda. Si el error desaparece, ve activando los módulos uno a uno desde el panel de administración para identificar al culpable.
[INFO] Esta operación no borra los módulos, solo los desactiva. Podrás volver a activarlos cuando quieras desde el panel de administración.
Paso 5: Revisa el archivo .htaccess
El archivo .htaccess es un archivo de configuración especial que controla el comportamiento del servidor. Si está dañado o tiene reglas incorrectas, puede provocar el PrestaShop error 500 hosting.
Cómo regenerar el .htaccess
PrestaShop puede regenerar automáticamente este archivo, pero necesitas acceso al panel de administración. Si no puedes entrar, puedes eliminar el archivo y PrestaShop lo recreará al cargar la página:
- Accede al administrador de archivos.
- Busca el archivo
.htaccessen la raíz de tu tienda. - Renómbralo a
.htaccess_bak(esto lo conserva por seguridad). - Recarga tu tienda. PrestaShop debería crear un archivo nuevo automáticamente.
[WARNING] Si tu tienda tiene reglas personalizadas en el
.htaccess(como redirecciones o reglas de seguridad), asegúrate de copiarlas antes de eliminar el archivo. De lo contrario, las perderás.
Paso 6: Verifica el espacio en disco y los límites del servidor
A veces el error 500 en PrestaShop aparece porque el servidor se ha quedado sin espacio en disco o porque has superado algún límite (como el número máximo de archivos o la cuota de almacenamiento).
Cómo comprobar el espacio en disco
- Accede al panel de control de tu hosting.
- Busca la sección "Uso de disco" o "Disk Usage".
- Comprueba si has superado el límite de tu plan.
- Si es necesario, elimina archivos temporales, copias de seguridad antiguas o cachés para liberar espacio.
Otros límites a revisar
- Límite de inodos: algunos hostings limitan el número de archivos que puedes tener. Si tienes demasiados, el servidor puede dar error 500.
- Límite de CPU: si tu tienda recibe mucho tráfico y el plan no soporta esa carga, el servidor puede bloquearse.
[TIP] Si tu hosting tiene un sistema de monitoreo, revisa los registros de errores del servidor. Normalmente encontrarás la causa exacta del error en los logs de PHP o de Apache. Pregunta a tu proveedor cómo acceder a ellos.
Paso 7: Revisa los registros de errores del servidor
Los registros de errores (logs) son como el "diario" del servidor. Ahí se anota todo lo que ocurre, incluidos los errores que provocan el PrestaShop fallo servidor. Revisar estos registros es la forma más directa de saber qué está fallando.
Dónde encontrar los logs
- En cPanel: busca la sección "Registros de errores" o "Error Logs".
- En Syspanel: accede a
https://tu-dominio:2106, ve a la sección "Registros" o "Logs" y busca el log de errores de PHP o de Apache. - Vía FTP: busca carpetas como
logs,error_logo archivos con extensión.logen la raíz de tu tienda.
Qué buscar en los logs
Los logs suelen mostrar la fecha, la hora y el error exacto. Presta atención a mensajes como:
PHP Fatal error: Allowed memory size exhaustedPHP Parse error: syntax error, unexpected...Permission denied
Cada uno de estos mensajes te dará una pista clara sobre qué solución aplicar de las que hemos visto anteriormente.
Paso 8: Comprueba la versión de PHP
PrestaShop necesita una versión de PHP compatible para funcionar correctamente. Si tu hosting ha actualizado PHP a una versión más reciente o más antigua de la que tu tienda soporta, es muy probable que aparezca el error 500 PrestaShop.
Versiones de PHP recomendadas según la versión de PrestaShop
- PrestaShop 1.6: PHP 5.6 o 7.0
- PrestaShop 1.7: PHP 7.1 a 7.4
- PrestaShop 8.x: PHP 7.2 a 8.1
Cómo cambiar la versión de PHP
- Accede al panel de control de tu hosting.
- Busca la sección "Versión de PHP" o "PHP Selector".
- Selecciona una versión compatible con tu PrestaShop.
- Guarda los cambios y recarga tu tienda.
[WARNING] Antes de cambiar la versión de PHP, haz una copia de seguridad completa de tu tienda. Un cambio de versión puede provocar incompatibilidades con algunos módulos o temas.
Paso 9: Restaura una copia de seguridad
Si has probado todos los pasos anteriores y el error 500 en PrestaShop persiste, puede que el problema sea más profundo. En ese caso, la opción más segura es restaurar una copia de seguridad reciente.
Cómo restaurar una copia de seguridad
- Accede a tu panel de hosting y busca la sección "Copias de seguridad" o "Backups".
- Selecciona la copia más reciente anterior al momento en que empezó el error.
- Restaura tanto los archivos como la base de datos.
- Recarga tu tienda y comprueba si el error ha desaparecido.
[INFO] Si no tienes una copia de seguridad en tu hosting, contacta con tu proveedor. Algunos hostings guardan copias automáticas durante varios días. También puedes tener copias en tu ordenador si usas un servicio de backup externo.
Preguntas frecuentes sobre el error 500 en PrestaShop
¿Por qué veo el error 500 solo en algunas páginas de mi tienda?
Esto suele indicar que el problema está en un módulo o en un archivo específico de esas páginas. Revisa los logs de errores para identificar qué archivo está fallando. También puede ser un problema de caché: prueba a vaciar la caché de PrestaShop desde el panel de administración o eliminando manualmente el contenido de la carpeta var/cache.
¿El error 500 puede deberse a un ataque informático?
Es posible, aunque no es lo más común. Si sospechas de un ataque, revisa los archivos de tu tienda en busca de código malicioso (archivos con nombres extraños, contenido codificado, etc.). Cambia todas tus contraseñas y considera instalar un módulo de seguridad.
¿Cuánto tiempo se tarda en solucionar el error 500?
Depende de la causa. Los problemas de permisos o de memoria suelen resolverse en minutos. Si el problema es un módulo conflictivo, puede llevar un poco más de tiempo identificarlo. En el peor de los casos, restaurar una copia de seguridad puede tardar entre 10 y 30 minutos.
¿Debo contactar con mi proveedor de hosting?
Si has seguido todos los pasos de esta guía y el error persiste, sí. Es posible que el problema esté en el servidor mismo y no en tu tienda. Tu proveedor podrá revisar los logs del servidor y diagnosticar el problema desde su lado.
Conclusión y consejos finales
El error 500 PrestaShop es un problema común pero totalmente solucionable. La clave está en ir descartando causas poco a poco, desde las más simples (permisos, memoria) hasta las más complejas (módulos, versiones de PHP). Con esta guía, ya tienes todas las herramientas para solucionar error 500 por ti mismo.
Recuerda siempre:
- Haz copias de seguridad antes de hacer cambios importantes.
- Anota los cambios que realizas para poder revertirlos si es necesario.
- Mantén tu PrestaShop actualizado junto con todos los módulos y temas.
- No dejes el modo debug activado en producción.
[TIP] Si tu hosting usa Syspanel, recuerda que puedes acceder a todas las herramientas de gestión (archivos, bases de datos, logs) desde
https://tu-dominio:2106. Tómate un tiempo para familiarizarte con el panel, te ahorrará muchos dolores de cabeza en el futuro.
Espero que esta guía te haya sido de utilidad y que tu tienda vuelva a estar operativa cuanto antes. Si te ha quedado alguna duda, no dudes en dejar un comentario o contactar con el soporte de tu hosting. ¡Buena suerte con tu tienda online!
