Solución a errores 500 en PrestaShop: Guía para principiantes
Si eres nuevo en el mundo de PrestaShop y te has encontrado con un molesto error 500 PrestaShop, no te preocupes. Es uno de los problemas más comunes, pero también uno de los más fáciles de solucionar si sabes por dónde empezar. En esta guía para principiantes, te explicaremos paso a paso cómo solucionar error 500 PrestaShop y qué hacer cuando aparece el temido PrestaShop error interno servidor.
¿Qué es un error 500 en PrestaShop?
El error 500, también conocido como "Error interno del servidor", es un mensaje genérico que indica que algo salió mal en el servidor web, pero sin dar detalles específicos. En PrestaShop, este error puede aparecer de repente mientras navegas por tu tienda, al intentar acceder al panel de administración, o incluso después de instalar un módulo o tema nuevo.
[INFO] El error 500 no es un problema de tu ordenador ni de tu conexión a internet. Es un fallo que ocurre en el servidor donde está alojada tu tienda.
Causas más frecuentes del error 500 en PrestaShop
Antes de ponernos manos a la obra, es útil conocer qué puede estar provocando este error. Las causas más habituales son:
- Archivos .htaccess corruptos o mal configurados
- Problemas de permisos de archivos y carpetas
- Módulos o temas incompatibles o defectuosos
- Límite de memoria PHP excedido (memory_limit)
- Archivos PHP con errores de sintaxis
- Problemas con la versión de PHP
- Espacio en disco insuficiente
Paso 1: No entres en pánico. Haz una copia de seguridad
Lo primero que debes hacer antes de cualquier cambio es asegurarte de que tienes una copia de seguridad de tu tienda. Si no tienes una, y tu hosting lo permite, crea una copia de los archivos y la base de datos desde el panel de control.
[WARNING] Si modificas archivos sin tener una copia de seguridad, podrías perder datos importantes o dejar tu tienda en un estado peor.
Paso 2: Activa el modo debug de PrestaShop
Por defecto, PrestaShop oculta los detalles del error 500 para proteger información sensible. Pero tú puedes activar el modo debug para ver el mensaje de error real.
Cómo activar el modo debug
- Accede a tu servidor mediante FTP o el administrador de archivos de tu hosting.
- Busca el archivo
config/defines.inc.phpen la raíz de tu instalación de PrestaShop. - Descarga una copia del archivo por seguridad.
- Edita el archivo y cambia la línea:
por:define('_PS_MODE_DEV_', false);define('_PS_MODE_DEV_', true); - Guarda los cambios y vuelve a cargar la página que daba el error.
Ahora verás un mensaje de error más detallado, como "Fatal error: Allowed memory size exhausted" o "Parse error: syntax error". Ese mensaje te dará pistas clave para solucionar error 500 PrestaShop.
[TIP] Si no puedes acceder al archivo por FTP, puedes hacerlo desde el panel de control de tu hosting (cPanel, Syspanel, etc.). En Syspanel, el acceso es por el puerto 2106.
Paso 3: Soluciona el error según el mensaje que veas
Dependiendo del mensaje que aparezca, actuarás de una forma u otra. Aquí tienes las soluciones más comunes:
Si el error dice "Allowed memory size exhausted"
Esto significa que tu tienda se ha quedado sin memoria PHP. Para solucionarlo:
- Busca el archivo
config/defines.inc.php(el mismo que antes). - Añade esta línea justo después de
<?php:ini_set('memory_limit', '256M'); - Guarda y prueba de nuevo.
Si no funciona, contacta con tu proveedor de hosting para que aumente el límite de memoria PHP.
Si el error es "Parse error" o "syntax error"
Esto indica que hay un error de sintaxis en un archivo PHP. Normalmente ocurre después de editar un archivo manualmente o instalar un módulo defectuoso.
- El mensaje te dirá el archivo y la línea exacta del error.
- Accede a ese archivo por FTP y revísalo.
- Si el error está en un módulo, desactívalo desde la base de datos (ver siguiente paso).
Si no ves ningún mensaje detallado
A veces el modo debug no muestra nada. En ese caso, revisa los logs del servidor. Puedes encontrarlos en:
- cPanel: "Errores" o "Log de errores"
- Syspanel: En la sección de logs del dominio (puerto 2106)
- Por FTP: En la carpeta
var/logs/de tu servidor (si tienes acceso)
Paso 4: Desactiva módulos y temas problemáticos desde la base de datos
Si el error apareció justo después de instalar un módulo o cambiar de tema, es muy probable que el culpable sea ese. Si no puedes acceder al panel de administración, tendrás que desactivarlo manualmente desde la base de datos.
Cómo desactivar módulos desde phpMyAdmin
- Accede a phpMyAdmin desde tu panel de hosting (en Syspanel, está en "Bases de datos").
- Selecciona la base de datos de tu PrestaShop.
- Busca la tabla
ps_modules(el prefijo puede ser diferente, comoprestashop_modules). - Haz clic en "Examinar" o "Browse".
- Busca el módulo que crees que causa el problema (por nombre).
- Edita la fila y cambia el valor de
activede 1 a 0. - Guarda los cambios.
Para desactivar un tema, busca la tabla ps_configuration y cambia el valor de PS_THEME_NAME por el nombre de un tema predeterminado (como classic).
[WARNING] Ten cuidado al editar la base de datos. Un cambio incorrecto puede romper tu tienda. Si no te sientes seguro, pide ayuda a tu hosting o a un técnico.
Paso 5: Regenera el archivo .htaccess
Un archivo .htaccess corrupto es una causa muy común del PrestaShop error interno servidor. Para regenerarlo:
- Conéctate por FTP a tu servidor.
- Busca el archivo
.htaccessen la raíz de tu tienda (puede estar oculto, activa la opción "Mostrar archivos ocultos" en tu cliente FTP). - Descarga una copia por seguridad.
- Elimina el archivo
.htaccessdel servidor. - Ve a tu tienda e intenta acceder de nuevo. Si el error desaparece, significa que ese era el problema.
- Para regenerar un
.htaccesslimpio, accede a tu panel de administración de PrestaShop (si puedes) y ve a "Configuración de la tienda" > "Tráfico y SEO" > "SEO y URLs". Haz clic en "Guardar" sin cambiar nada. Esto creará un nuevo.htaccess.
Si no puedes acceder al panel, puedes crear un .htaccess básico manualmente:
# START PrestaShop
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
</IfModule>
# END PrestaShop
Paso 6: Verifica los permisos de archivos y carpetas
Los permisos incorrectos también pueden provocar un error 500. Los valores recomendados son:
- Carpetas: 755
- Archivos: 644
- Archivos de configuración: 644
Puedes cambiar los permisos desde tu cliente FTP (clic derecho > "Permisos" o "CHMOD") o desde el panel de archivos de tu hosting.
[TIP] En Syspanel, puedes usar el administrador de archivos para cambiar permisos de forma masiva seleccionando varias carpetas.
Paso 7: Aumenta el límite de ejecución de PHP
A veces el error 500 aparece porque un script tarda demasiado en ejecutarse. Para solucionarlo, crea o edita el archivo php.ini en la raíz de tu tienda con este contenido:
max_execution_time = 120
memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 64M
Si tu hosting no permite php.ini, puedes intentar con un archivo .user.ini o añadir las líneas en el config/defines.inc.php como vimos antes.
Paso 8: Comprueba la versión de PHP
PrestaShop requiere una versión específica de PHP. Por ejemplo, PrestaShop 1.7 funciona mejor con PHP 7.1 a 7.4, mientras que versiones más antiguas pueden necesitar PHP 5.6.
- Accede a tu panel de hosting.
- Busca la opción "Seleccionar versión de PHP" (en Syspanel está en "Configuración del dominio").
- Cambia a una versión compatible con tu PrestaShop.
- Guarda los cambios y prueba de nuevo.
Paso 9: Verifica el espacio en disco
Un disco lleno puede causar errores 500. Revisa en tu panel de hosting cuánto espacio te queda. Si está al límite, libera espacio eliminando copias de seguridad antiguas, logs o archivos temporales.
Preguntas frecuentes (FAQ)
¿El error 500 puede deberse a un ataque?
Sí, aunque es menos común. Si tu tienda ha sido hackeada, pueden inyectar código malicioso que cause errores. En ese caso, sigue los pasos anteriores y, si no funciona, contacta con soporte técnico.
¿Pierdo mis datos si elimino el archivo .htaccess?
No, el archivo .htaccess solo contiene reglas de reescritura de URL y configuraciones del servidor. Tus productos, clientes y pedidos están en la base de datos y no se ven afectados.
¿Puedo evitar el error 500 en el futuro?
Sí, con estos consejos:
- Mantén PrestaShop, módulos y temas actualizados.
- Haz copias de seguridad periódicas.
- No instales módulos de fuentes no confiables.
- Usa un hosting de calidad que ofrezca soporte técnico rápido.
¿Qué hago si ninguno de estos pasos funciona?
Si después de seguir todos los pasos el error 500 PrestaShop persiste, contacta con tu proveedor de hosting. Puede ser un problema de configuración del servidor que solo ellos pueden resolver. En Syspanel, puedes abrir un ticket de soporte desde el panel de control (puerto 2106).
Conclusión
El error 500 en PrestaShop puede parecer aterrador al principio, pero con un enfoque metódico y las herramientas adecuadas, puedes solucionar error 500 PrestaShop sin necesidad de ser un experto. Recuerda siempre hacer copias de seguridad antes de modificar archivos, activar el modo debug para obtener pistas, y revisar los puntos más comunes: .htaccess, permisos, memoria PHP y módulos problemáticos.
[TIP] Si eres muy principiante y no te sientes cómodo editando archivos o bases de datos, muchos hostings ofrecen soporte técnico gratuito. No dudes en pedir ayuda. ¡Tu tienda volverá a funcionar en poco tiempo!
Esperamos que esta guía te haya sido de ayuda. Si tienes más dudas, déjalas en los comentarios o consulta nuestra sección de tutoriales. ¡Buena suerte con tu tienda PrestaShop!
