Resolver error 500 en PrestaShop en Syspanel
¿Qué es el error 500 en PrestaShop y por qué aparece en Syspanel?
El error 500 PrestaShop, también conocido como "Error interno del servidor", es uno de los problemas más frustrantes que puedes encontrar al administrar tu tienda online. Cuando ves esta pantalla en blanco o un mensaje como "Internal Server Error", significa que algo está fallando en el servidor, pero no se te da una explicación clara de qué es.
En Syspanel (el panel de control basado en HestiaCP, al que accedes por el puerto 2106), este error puede deberse a varias causas comunes: archivos de configuración corruptos, problemas de permisos, módulos incompatibles, o incluso un archivo .htaccess mal configurado. La buena noticia es que, en la mayoría de los casos, solucionar error 500 Syspanel es algo que puedes hacer tú mismo siguiendo pasos sencillos.
[INFO] El error 500 no siempre significa que tu tienda esté rota para siempre. Muchas veces es solo un problema temporal que se resuelve con unos pocos ajustes.
Causas más frecuentes del error interno del servidor en PrestaShop
Antes de lanzarte a solucionar, es útil entender qué lo provoca. Aquí tienes las causas más habituales:
- Archivo .htaccess dañado o mal generado: Es uno de los culpables número uno. PrestaShop genera este archivo automáticamente, pero a veces se corrompe.
- Módulo o tema incompatible: Tras actualizar PrestaShop o instalar un nuevo módulo, puede haber conflictos.
- Permisos incorrectos en archivos o carpetas: Si los permisos no son los adecuados, el servidor no puede leer o escribir ciertos archivos.
- Límite de memoria PHP excedido: Si tu tienda tiene muchas imágenes, módulos pesados o tráfico, puede superar el límite permitido.
- Archivos de configuración (settings.inc.php) corruptos: Este archivo contiene las credenciales de la base de datos; si algo está mal, todo falla.
- Error en la base de datos: Tablas corruptas o problemas de conexión.
[TIP] Si el error apareció justo después de instalar un módulo o tema, desactívalo primero desde el panel de administración (si puedes acceder) o renombrando su carpeta vía FTP.
Paso a paso: Cómo solucionar el error 500 en PrestaShop desde Syspanel
Vamos a resolverlo. Sigue estos pasos en orden. No te saltes ninguno hasta que el error desaparezca.
Paso 1: Accede a Syspanel (puerto 2106)
Para empezar, entra a tu panel de control Syspanel. Recuerda que la dirección es algo como:
https://tudominio.com:2106 o https://tu-ip:2106
Ingresa con tu usuario y contraseña de administrador del hosting.
Paso 2: Habilita la visualización de errores de PHP
El error 500 es genérico. Para obtener más detalles, necesitas que PHP te muestre el error real. Esto se hace editando el archivo config/defines.inc.php de PrestaShop.
- Desde Syspanel, ve a Archivos > Administrador de archivos.
- Navega hasta la carpeta raíz de tu tienda (normalmente
public_htmlowww). - Abre la carpeta
configy busca el archivodefines.inc.php. - Edítalo (clic derecho > Editar).
- Busca la línea que dice:
define('_PS_MODE_DEV_', false); - Cámbiala a:
define('_PS_MODE_DEV_', true); - Guarda los cambios.
Ahora, al recargar tu tienda, en lugar del error 500, verás un mensaje descriptivo como "Fatal error: Allowed memory size exhausted" o "Class not found". Eso te dará pistas claras.
[WARNING] No olvides volver a poner
falsecuando termines de solucionar el error, o tu tienda mostrará información sensible a los visitantes.
Paso 3: Verifica y repara el archivo .htaccess
El archivo .htaccess (con punto al inicio) está en la raíz de tu tienda. Si está dañado, PrestaShop no funciona.
- En el Administrador de archivos de Syspanel, busca el archivo
.htaccessen la raíz. - Renómbralo a
.htaccess_old(esto lo desactiva temporalmente). - Recarga tu tienda. Si el error 500 desaparece, el problema era ese archivo.
- Para regenerarlo correctamente, ve al panel de administración de PrestaShop (si puedes acceder) a Configuración de la tienda > Tráfico y SEO > URLs amigables y haz clic en "Guardar" (sin cambiar nada). Esto generará un nuevo .htaccess.
Si no puedes acceder al panel de administración, puedes crear un .htaccess básico manualmente. Copia este contenido en un nuevo archivo llamado .htaccess:
# START PRESTASHOP HTACCESS
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
# END PRESTASHOP HTACCESS
Guárdalo y prueba de nuevo.
Paso 4: Revisa los permisos de archivos y carpetas
Los permisos incorrectos son otra causa común. En Syspanel, puedes ajustarlos fácilmente:
- En el Administrador de archivos, selecciona toda la carpeta de tu tienda (marca la casilla de la carpeta raíz).
- Haz clic en Permisos (o "Permissions").
- Establece 755 para carpetas y 644 para archivos. Algunos sistemas permiten aplicar recursivamente.
- Aplica los cambios.
[INFO] Los permisos 755 significan: el dueño puede leer, escribir y ejecutar; los demás solo leer y ejecutar. Para archivos, 644 es estándar.
Paso 5: Aumenta el límite de memoria PHP
Si el error dice algo de "memory size", necesitas más memoria PHP. En Syspanel:
- Ve a Servicios > PHP (o "PHP Settings").
- Busca la opción memory_limit.
- Cámbiala a 256M o incluso 512M si tu hosting lo permite.
- Guarda y reinicia el servicio PHP si es necesario (suele haber un botón "Reiniciar").
Si no encuentras esta opción, puedes crearla manualmente en un archivo php.ini en la raíz de tu tienda. Crea un archivo llamado php.ini con este contenido:
memory_limit = 256M
max_execution_time = 300
upload_max_filesize = 64M
post_max_size = 64M
Paso 6: Revisa el archivo settings.inc.php
Este archivo está en config/settings.inc.php. Contiene los datos de conexión a la base de datos. Si está corrupto, todo falla.
- Ábrelo desde el Administrador de archivos.
- Verifica que los valores
_DB_SERVER_,_DB_NAME_,_DB_USER_y_DB_PASSWD_sean correctos (puedes consultarlos en la sección de bases de datos de Syspanel). - Si todo está bien, no toques nada. Si hay errores, corrígelos.
[WARNING] No compartas este archivo con nadie, contiene las contraseñas de tu base de datos.
Paso 7: Desactiva módulos problemáticos desde la base de datos
Si el error apareció tras instalar un módulo y no puedes acceder al panel de administración, puedes desactivarlo directamente desde la base de datos usando phpMyAdmin (accesible desde Syspanel).
- En Syspanel, ve a Bases de datos > phpMyAdmin.
- Selecciona la base de datos de tu tienda.
- Busca la tabla
ps_module(el prefijo puede variar, pero suele serps_). - Localiza el módulo problemático por su nombre.
- Cambia el campo
activede1a0(desactivado). - Guarda los cambios y recarga tu tienda.
Paso 8: Verifica la integridad de los archivos de PrestaShop
Si nada funciona, puede que algún archivo central de PrestaShop esté dañado. La solución más limpia es:
- Descarga una copia limpia de la misma versión de PrestaShop que tienes instalada.
- Desde el Administrador de archivos de Syspanel, sube los archivos de la carpeta
admin,classes,controllersycore(sobrescribiendo los existentes). - No subas la carpeta
confignithemespara no perder tu configuración y diseño.
Preguntas frecuentes (FAQ)
¿El error 500 puede deberse a un ataque o malware?
Sí, aunque es menos común. Si después de seguir todos los pasos el error persiste, revisa si hay archivos extraños en la raíz (como .php con nombres raros) o consulta los logs de errores en Syspanel (sección Logs > Error log).
¿Pierdo mis datos si sigo estos pasos?
No, a menos que borres archivos importantes. Siempre renombra o respalda antes de eliminar. Los pasos aquí descritos son seguros y no afectan tus productos, clientes ni pedidos.
¿Qué hago si no puedo acceder ni a Syspanel?
Contacta a tu proveedor de hosting. Si el problema es a nivel de servidor, ellos pueden reiniciar servicios o revisar los logs del sistema.
¿El error 500 afecta el SEO de mi tienda?
Sí, si el error dura mucho tiempo, los motores de búsqueda pueden penalizar tu sitio. Por eso es crucial solucionarlo rápido. Una vez resuelto, tu tienda vuelve a la normalidad sin consecuencias graves si la corrección es inmediata.
Resumen final: Checklist rápido para solucionar error 500 PrestaShop
Aquí tienes un resumen visual para que no te pierdas:
- Habilitar modo debug en
defines.inc.phppara ver el error real. - Renombrar
.htaccessy regenerarlo. - Ajustar permisos a 755/644.
- Aumentar
memory_limita 256M o más. - Verificar
settings.inc.php. - Desactivar módulos sospechosos desde phpMyAdmin.
- Reemplazar archivos centrales si es necesario.
- Revisar logs de error en Syspanel.
[TIP] Si después de todo el error persiste, no dudes en contactar al soporte técnico de tu hosting. A veces el problema está en la configuración del servidor (como PHP versiones incompatibles) y ellos pueden resolverlo en minutos.
Recuerda que solucionar error 500 Syspanel es más fácil de lo que parece. Con paciencia y siguiendo estos pasos, tu tienda PrestaShop volverá a funcionar sin problemas. ¡Manos a la obra!
