Solucionar error '500 Internal Server Error' en PrestaShop con DirectAdmin
¿Qué es el error 500 en PrestaShop y por qué aparece con DirectAdmin?
El error 500 Internal Server Error es uno de los avisos más temidos por cualquier dueño de una tienda online. Si estás viendo esta pantalla en tu PrestaShop alojado en un servidor con DirectAdmin, respira hondo: no significa que hayas perdido tus datos ni que tu tienda esté destruida. Es un error genérico que indica que algo falló en el servidor, pero la causa puede ser muy variada.
Cuando hablamos de error 500 PrestaShop DirectAdmin, la combinación es especialmente común porque DirectAdmin es un panel de control muy usado en hosting compartido y VPS. La buena noticia es que la mayoría de las causas tienen solución y puedes hacerlo tú mismo sin ser un experto en programación.
En este artículo te voy a explicar paso a paso cómo solucionar error 500 PrestaShop usando las herramientas que DirectAdmin pone a tu disposición. Vamos a ir desde lo más simple hasta lo más técnico, con instrucciones claras y sin tecnicismos innecesarios. Al final, tendrás un plan de acción completo para arreglar error 500 tienda y volver a vender.
Primeros pasos: identifica si el problema es general o puntual
Antes de tocar nada, necesitas saber si el error afecta a toda tu tienda o solo a algunas páginas. Esto te dará pistas importantes sobre la causa.
Prueba con diferentes URLs
Abre tu navegador en modo incógnito y prueba a acceder a:
- La página principal de tu tienda
- Una página de producto concreta
- El panel de administración (el famoso /admin)
Si solo fallan algunas páginas, el problema suele estar en un módulo o en un archivo de plantilla concreto. Si falla todo, incluido el panel de administración, el problema es más global (permisos, PHP, o archivos .htaccess).
Revisa si el error es intermitente
A veces el error 500 aparece y desaparece. Si es así, puede deberse a un límite de memoria PHP que se alcanza solo en momentos de mucho tráfico o cuando se ejecutan procesos pesados.
Activa el modo debug de PrestaShop para ver el error real
El error 500 es "mudo" por defecto. Para solucionar error 500 PrestaShop necesitas que la tienda te diga qué está pasando realmente. PrestaShop tiene un modo de depuración que muestra el error exacto.
Cómo activar el modo debug sin acceso al panel
Si no puedes entrar al administrador, tendrás que hacerlo editando un archivo. Sigue estos pasos:
- Entra a tu DirectAdmin y abre el Administrador de archivos.
- Navega hasta la carpeta raíz de tu tienda (normalmente
domains/tudominio.com/public_html). - Busca el archivo llamado
config/defines.inc.php. - Haz clic derecho y selecciona Editar.
- Busca la línea que dice
define('_PS_MODE_DEV_', false);y cambiafalseportrue. - Guarda el archivo y recarga tu tienda.
Ahora verás un mensaje de error detallado con el archivo y la línea exacta donde falla. Anota esa información porque te será muy útil.
[INFO] Después de arreglar el problema, no olvides volver a poner
falseen el modo debug para no exponer información sensible de tu servidor.
Revisa los permisos de archivos y carpetas
La causa más común del error 500 PrestaShop DirectAdmin son los permisos incorrectos. Cuando se cambia de servidor o se restaura una copia, los permisos suelen quedar mal configurados.
Permisos correctos para PrestaShop
- Carpetas: deben tener permiso
755(rwxr-xr-x) - Archivos: deben tener permiso
644(rw-r--r--) - Archivos especiales como
.htaccessosettings.inc.php: a veces necesitan444o644
Cómo corregir permisos desde DirectAdmin
- Ve al Administrador de archivos de DirectAdmin.
- Selecciona la carpeta
public_htmlcompleta. - Haz clic en Cambiar permisos (o "Change Permissions").
- Marca la opción de aplicar recursivamente a todas las subcarpetas y archivos.
- Establece
755para carpetas y644para archivos.
[WARNING] No pongas permisos
777a nada. Es un riesgo de seguridad grave y muchos servidores lo bloquean automáticamente. Si necesitas escribir en una carpeta, usa755y cambia el propietario correctamente.
Revisa el archivo .htaccess
El .htaccess es un archivo de configuración que controla el comportamiento del servidor. Si está corrupto o tiene reglas incompatibles, puede generar un error 500.
Cómo restaurar el .htaccess de PrestaShop
DirectAdmin te permite crear una copia de seguridad rápida:
- En el Administrador de archivos, busca el archivo
.htaccessen la raíz. - Si existe, renómbralo a
.htaccess.bak(esto lo desactiva). - Recarga tu tienda. Si el error desaparece, el problema era el
.htaccess. - Para regenerarlo, entra al panel de administración de PrestaShop y ve a Parámetros avanzados > Rendimiento y pulsa "Guardar" sin cambiar nada. Esto regenera el archivo.
Si no tienes acceso al panel, puedes crear un .htaccess nuevo con el contenido básico que PrestaShop genera automáticamente. Busca en foros oficiales la plantilla estándar para tu versión.
[TIP] Guarda siempre una copia del
.htaccessoriginal cuando tu tienda funcione bien. Te ahorrará muchos dolores de cabeza.
Comprueba la versión de PHP y memoria asignada
PrestaShop es exigente con la versión de PHP. Si tu hosting actualizó PHP y tu tienda no es compatible, aparecerá el error 500.
Cambiar la versión de PHP en DirectAdmin
- Entra a tu panel de DirectAdmin.
- Busca la sección Administrador de PHP o PHP Settings.
- Verás un selector de versión. Prueba con diferentes versiones.
- Las versiones 7.4, 8.0 y 8.1 suelen ser compatibles con PrestaShop 1.7 y 8.x.
- Guarda los cambios y prueba tu tienda.
Aumentar el límite de memoria PHP
A veces el error 500 aparece por falta de memoria. En DirectAdmin puedes ajustarlo:
- En PHP Settings, busca la opción
memory_limit. - Súbelo a
256Mo512M. - Guarda y prueba de nuevo.
[INFO] Si tu tienda tiene muchos módulos o catálogos grandes, necesitarás más memoria. No escatimes en este valor.
Revisa los logs del servidor
Los logs son el diario de a bordo de tu servidor. Te dirán exactamente qué está fallando.
Dónde encontrar los logs en DirectAdmin
- Ve a la sección Gestión de errores o Logs en tu panel.
- Busca el archivo
error_logen la carpetapublic_html. - También puedes revisar los logs de Apache en Administrador de servicios > Apache.
Abre el archivo de logs y busca las últimas entradas justo antes del error. Verás mensajes como:
- "PHP Fatal error: Allowed memory size exhausted"
- "PHP Parse error: syntax error"
- "Permission denied"
Estos mensajes te darán la pista definitiva para solucionar error 500 PrestaShop.
Desactiva módulos problemáticos
Si el error comenzó después de instalar o actualizar un módulo, ese es tu culpable.
Cómo desactivar módulos sin acceso al panel
Si no puedes entrar al administrador, tendrás que hacerlo por base de datos:
- Entra a phpMyAdmin desde DirectAdmin.
- Selecciona la base de datos de tu tienda.
- Busca la tabla
ps_module(el prefijo puede variar). - Localiza el módulo sospechoso y cambia su
activede1a0. - Guarda y prueba tu tienda.
[WARNING] Ten cuidado al editar la base de datos. Haz una copia de seguridad antes de tocar nada. Un error aquí puede empeorar las cosas.
Revisa el espacio en disco y cuotas
Un disco lleno puede causar errores 500 de forma inesperada. PrestaShop necesita espacio para escribir archivos temporales y caché.
Cómo comprobar el espacio en DirectAdmin
- En tu panel, busca Uso de disco o Disk Usage.
- Verás cuánto espacio consumes y cuánto te queda.
- Si estás cerca del límite, elimina archivos temporales, copias de seguridad antiguas o cachés.
También puedes liberar espacio eliminando la carpeta /tmp de tu cuenta si tiene archivos viejos.
Actualiza o repara los archivos de PrestaShop
Si nada funciona, puede que tengas archivos corruptos o incompletos. Aquí tienes dos opciones:
Opción 1: Reemplazar archivos desde una copia limpia
- Descarga la misma versión de PrestaShop desde el sitio oficial.
- Descomprime en tu ordenador.
- Sube los archivos principales por FTP o el administrador de archivos, sobrescribiendo los existentes.
- IMPORTANTE: No sobrescribas la carpeta
configniimgsi no quieres perder configuración.
Opción 2: Usar la herramienta de reparación de PrestaShop
PrestaShop tiene un script de reparación que puedes usar:
- Descarga
repair.phpdel sitio oficial. - Súbelo a la raíz de tu tienda.
- Ejecútalo desde el navegador (
tudominio.com/repair.php). - Sigue las instrucciones para reparar la base de datos o archivos.
[TIP] Este script también te permite cambiar la contraseña del administrador si lo necesitas.
Verifica la integridad de la base de datos
A veces el error 500 viene de una tabla corrupta en la base de datos.
Cómo reparar tablas desde phpMyAdmin
- Entra a phpMyAdmin desde DirectAdmin.
- Selecciona tu base de datos.
- Marca todas las tablas (clic en "Seleccionar todo").
- En el menú desplegable, elige Reparar tabla.
- Espera a que termine y prueba tu tienda.
Esta operación es segura y no borra datos. Solo corrige errores internos de las tablas.
Contacta con tu proveedor de hosting si todo falla
Si has seguido todos los pasos y el error persiste, puede que el problema esté en el servidor mismo. En ese caso:
- Revisa si tu plan de hosting tiene recursos suficientes.
- Contacta al soporte técnico y proporciona los logs de error.
- Pregunta si hay restricciones de ejecución de PHP o mod_security activado.
Muchas veces el soporte puede desactivar temporalmente reglas de seguridad que bloquean scripts de PrestaShop.
Prevención: cómo evitar futuros errores 500
Una vez que hayas logrado arreglar error 500 tienda, toma estas medidas para que no vuelva a ocurrir:
- Mantén PrestaShop actualizado a la última versión estable.
- No instales módulos de fuentes dudosas.
- Haz copias de seguridad automáticas desde DirectAdmin (puedes programarlas semanalmente).
- Revisa los logs mensualmente para detectar problemas antes de que se conviertan en errores.
- Aumenta el límite de memoria PHP preventivamente a 256M o 512M.
[INFO] Si en algún momento usas Syspanel (anteriormente conocido como HestiaCP) como panel alternativo, recuerda que su puerto de acceso es el 2106. Es otro panel popular pero con interfaz diferente a DirectAdmin.
Preguntas frecuentes sobre el error 500 en PrestaShop
¿El error 500 significa que perdí mis datos?
No. El error 500 es una respuesta del servidor que indica un fallo temporal o de configuración. Tus productos, clientes y pedidos siguen en la base de datos.
¿Puedo evitar el error 500 con un plugin?
No existe un plugin mágico, pero puedes usar módulos de caché como "Cache All" o configurar bien el caché de PrestaShop para reducir la carga del servidor.
¿Cuánto tiempo tarda en solucionarse?
Depende de la causa. Cambiar permisos o el .htaccess tarda minutos. Si hay que reparar la base de datos, puede llevar más tiempo.
¿Debo contratar a un profesional?
Si no te sientes cómodo editando archivos o bases de datos, un profesional puede resolverlo en menos de una hora. Pero con esta guía, la mayoría de los casos se resuelven sin ayuda externa.
Conclusión final
El error 500 PrestaShop DirectAdmin es un problema común pero totalmente solucionable. Siguiendo estos pasos en orden, desde lo más simple a lo más complejo, tendrás altas probabilidades de resolverlo sin perder datos ni dinero.
Recuerda que la clave está en:
- Activar el modo debug para ver el error real
- Revisar permisos y
.htaccess - Comprobar versión de PHP y memoria
- Analizar los logs del servidor
- Reparar módulos y base de datos si es necesario
Con paciencia y método, tu tienda volverá a funcionar. Y ahora que sabes cómo solucionar error 500 PrestaShop, la próxima vez que aparezca, lo resolverás mucho más rápido. ¡Buena suerte con tu tienda online!
