Cómo solucionar el error 500 en PrestaShop: Guía para hosting
¡Hola! Soy el técnico de soporte amigable que te va a ayudar a resolver ese molesto error 500 en PrestaShop.
Si ves una pantalla en blanco o un mensaje como "Error interno del servidor", no te preocupes. Este es uno de los problemas más comunes en tiendas online y, por lo general, tiene solución. Vamos a ver paso a paso cómo diagnosticarlo y arreglarlo, centrándonos en lo que puedes hacer desde tu hosting y servidores.
¿Qué es el Error 500 en PrestaShop?
El error 500 es un código de estado HTTP que significa "Error interno del servidor". Básicamente, tu servidor web (Apache, Nginx, LiteSpeed) ha recibido la solicitud de tu navegador, pero no ha podido procesarla correctamente debido a un problema interno.
En PrestaShop, las causas más frecuentes son:
- Archivos .htaccess corruptos o mal configurados.
- Problemas de permisos de archivos o carpetas.
- Módulos o temas incompatibles.
- Límites de memoria PHP excedidos.
- Errores en la configuración de PHP (versión, extensiones).
- Problemas con la base de datos.
Lo bueno es que, con un poco de paciencia y siguiendo esta guía, podrás solucionarlo tú mismo desde el panel de control de tu hosting.
Paso 1: Activar el Modo Debug de PrestaShop (Tu Mejor Aliado)
Antes de tocar nada, necesitamos que PrestaShop te muestre el error real. Por defecto, los errores están ocultos. Activar el modo debug es el primer paso.
¿Cómo hacerlo?
- Accede a tu hosting mediante FTP (FileZilla, Cyberduck) o al Administrador de Archivos de tu panel de control (cPanel, Syspanel, Plesk).
- Busca el archivo
/config/defines.inc.phpen la raíz de tu instalación de PrestaShop. - Descarga una copia de seguridad de este archivo (por si acaso).
- Edita el archivo con un editor de texto plano (Bloc de notas, Sublime Text, VS Code).
- Busca la línea que dice:
define('_PS_MODE_DEV_', false); - Cámbiala por:
define('_PS_MODE_DEV_', true); - Guarda el archivo y súbelo de nuevo al servidor (sobrescribiendo el original).
[INFO] Al hacer esto, en lugar de la pantalla en blanco, verás un mensaje de error detallado con el archivo, la línea y la causa del problema. Anota ese mensaje, te dará la pista definitiva.
¿Y si no puedo editar el archivo?
Si no tienes acceso por FTP, puedes intentar hacerlo desde el panel de control de tu hosting. Busca la opción "Administrador de archivos" y navega hasta la carpeta config.
[WARNING] Una vez resuelto el error, vuelve a poner false en el modo debug. Si lo dejas activado, cualquier visitante podría ver información sensible de tu servidor.
Paso 2: Soluciones Rápidas desde tu Panel de Hosting
Si el modo debug no te da una pista clara o prefieres empezar por lo más básico, prueba estas soluciones.
2.1. Regenerar el archivo .htaccess
El archivo .htaccess de PrestaShop controla las reglas de reescritura de URL y la configuración del servidor. A veces se daña.
- Desde tu FTP o Administrador de archivos, renombra el archivo
.htaccess(en la raíz de PrestaShop) a.htaccess.oldo bórralo. - Ve al panel de administración de tu tienda (Back Office). Si no puedes acceder, salta al siguiente paso.
- Ve a Configuración de la tienda > Parámetros de la tienda > Tráfico y SEO.
- Haz clic en Guardar sin cambiar nada. Esto regenerará el archivo
.htaccessde forma automática.
[TIP] Si no puedes acceder al Back Office, simplemente renombra el archivo y prueba a cargar tu tienda. Si el error desaparece, el problema era el .htaccess. Luego puedes regenerarlo manualmente.
2.2. Limpiar la caché de PrestaShop
Una caché corrupta puede provocar errores 500.
- Desde el Back Office: Ve a Parámetros avanzados > Rendimiento y haz clic en Limpiar la caché.
- Desde FTP: Borra el contenido de las carpetas:
/cache/smarty/compile//cache/smarty/cache//cache/class_index.php(borra solo este archivo)/cache/cachefs/(si existe)
2.3. Deshabilitar todos los módulos (Modo Seguro)
Un módulo recién instalado o actualizado suele ser el culpable.
- Desde tu FTP, renombra la carpeta
/modulesa/modules_old. - Crea una carpeta nueva llamada
/modules(vacía). - Prueba tu tienda. Si funciona, el problema es un módulo.
- Para identificar cuál, mueve los módulos de uno en uno desde
modules_olda la nueva carpetamodules, probando después de cada movimiento.
[WARNING] Si no puedes acceder al Back Office, esta es la solución más efectiva.
Paso 3: Ajustar los Límites de PHP desde el Hosting
A veces, PrestaShop necesita más memoria de la que tu hosting tiene configurada por defecto.
¿Cómo aumentar la memoria PHP?
- Desde cPanel: Busca la sección Software y haz clic en Seleccionar versión de PHP. Luego, haz clic en Opciones o Switch to PHP Options. Busca
memory_limity cámbialo a256Mo512M. - Desde Syspanel (HestiaCP):
- Accede a tu panel Syspanel (recuerda, la URL es
https://tudominio.com:2106). - Ve a Web > Editar en tu dominio.
- Busca la opción Plantilla PHP o Configuración PHP avanzada.
- Aumenta
memory_limit,max_execution_time(a 120) yupload_max_filesize(a 64M).
- Accede a tu panel Syspanel (recuerda, la URL es
- Desde .htaccess: Si no tienes acceso al panel, añade esta línea al final de tu
.htaccess:php_value memory_limit 256M php_value max_execution_time 120
[INFO] Si tu hosting es muy básico o compartido, es posible que no permita modificar estos valores. En ese caso, contacta con tu proveedor de hosting.
Paso 4: Verificar Permisos de Archivos y Carpetas
Los permisos incorrectos son una causa común de errores 500.
- Carpetas: Deben tener permisos 755.
- Archivos: Deben tener permisos 644.
- Archivos especiales:
config/settings.inc.php(oapp/config/parameters.phpen versiones modernas) debe tener permisos 644 o 444 (solo lectura).
Puedes cambiar permisos desde tu cliente FTP (clic derecho > Atributos de archivo) o desde el Administrador de archivos de tu hosting.
[TIP] No pongas permisos 777 a no ser que sepas exactamente lo que haces. Es un riesgo de seguridad.
Paso 5: Comprobar la Versión de PHP y Extensiones
PrestaShop requiere una versión específica de PHP. Usar una versión demasiado antigua o demasiado nueva puede causar errores.
¿Qué versión de PHP necesito?
- PrestaShop 1.6: PHP 5.6 a 7.1 (recomendado 7.0).
- PrestaShop 1.7: PHP 7.1 a 7.4 (recomendado 7.4).
- PrestaShop 8.x: PHP 7.4 a 8.1 (recomendado 8.0).
¿Cómo cambiarlo?
- Desde cPanel: Busca Seleccionar versión de PHP y elige la adecuada.
- Desde Syspanel (HestiaCP): Ve a Web > Editar en tu dominio y selecciona la versión en el desplegable Versión PHP.
- Desde .htaccess: Añade (ejemplo para PHP 7.4):
AddHandler application/x-httpd-php74 .php
Además, asegúrate de que las extensiones PDO MySQL, GD Library, cURL, JSON, mbstring, OpenSSL, Zip y XML estén activadas. En cPanel, puedes verlo en la misma pantalla de selección de versión de PHP.
Paso 6: Revisar los Logs del Servidor
Si nada de lo anterior funciona, los logs del servidor son tu último recurso.
¿Dónde están los logs?
- cPanel: Busca la sección Métricas y haz clic en Errores o Error Log.
- Syspanel (HestiaCP): Ve a Web > Logs en tu dominio. Busca el archivo
error.logoerror_log. - FTP: Normalmente están en la carpeta
/logs/o en la raíz de tu hosting con nombres comoerror.log.
Abre el archivo de logs más reciente y busca errores que ocurran justo en el momento en que intentaste cargar tu tienda. Las líneas suelen tener el formato [fecha] [error] [cliente IP] .... Busca palabras como "PHP Fatal error", "memory exhausted", "allowed memory size", "permission denied".
[WARNING] Los logs pueden ser muy extensos. Te recomiendo descargarlos y buscarlos con un editor de texto.
FAQ: Preguntas Frecuentes sobre el Error 500 en PrestaShop
1. ¿Por qué aparece el error 500 después de instalar un módulo?
Es muy probable que el módulo sea incompatible con tu versión de PrestaShop o PHP, o que tenga un error de código. Sigue el Paso 2.3 para deshabilitar módulos.
2. El error 500 solo aparece en el Back Office, ¿qué hago?
Generalmente es un problema de memoria PHP o de un módulo específico del Back Office. Aumenta memory_limit en PHP (Paso 3) y deshabilita módulos recientes.
3. No tengo acceso al Back Office ni por FTP, ¿puedo solucionarlo desde el hosting?
Sí, la mayoría de los paneles de hosting (cPanel, Syspanel, Plesk) tienen un Administrador de archivos y un editor de texto. Desde ahí puedes editar el .htaccess, los archivos de configuración o deshabilitar módulos renombrando la carpeta.
4. ¿El error 500 puede deberse a un ataque o malware?
Sí, aunque es menos común. Si tu tienda ha sido infectada, los archivos pueden corromperse. Escanea tu instalación con un antivirus web o contacta a tu proveedor de hosting.
5. He probado todo y sigue sin funcionar, ¿qué hago?
Contacta con el soporte técnico de tu hosting. Explícales que has seguido estos pasos y dales el mensaje de error del modo debug o los logs del servidor. Ellos podrán revisar la configuración del servidor a nivel raíz.
Resumen y Consejos Finales
El error 500 en PrestaShop es un problema de hosting y servidores que, aunque parece grave, casi siempre tiene solución. Recuerda el orden lógico:
- Activar modo debug para ver el error real.
- Regenerar .htaccess y limpiar caché.
- Deshabilitar módulos (especialmente los nuevos).
- Aumentar límites de memoria PHP.
- Verificar permisos y versión de PHP.
- Consultar los logs del servidor.
[INFO] Si tu hosting es muy limitado (compartido básico), puede que no puedas modificar ciertos parámetros. En ese caso, considera migrar a un hosting especializado en PrestaShop que ofrezca más recursos y soporte técnico proactivo.
Espero que esta guía te haya sido de gran ayuda. Si tienes alguna duda, recuerda que estoy aquí para ayudarte. ¡Buena suerte con tu tienda!
