🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Solucionar errores comunes de PrestaShop en el servidor

Actualizado el 26 de octubre de 2025

Si gestionas una tienda online con PrestaShop, probablemente ya sabes que es una plataforma potente pero, a veces, exigente. Cuando algo falla en el servidor, la tienda puede volverse lenta, mostrar errores o incluso dejar de funcionar. No te preocupes: la mayoría de estos problemas tienen solución y no requieren ser un experto en sistemas. En este artículo, te guiaré paso a paso para solucionar errores comunes de PrestaShop en el servidor. Usaremos términos claros y ejemplos prácticos, como si estuviera a tu lado explicándotelo.


¿Por qué ocurren errores de PrestaShop en el servidor?

Antes de lanzarnos a las soluciones, es útil entender el origen. Los errores más frecuentes suelen deberse a:

  • Configuración incorrecta de PHP: versiones incompatibles, límites de memoria bajos o extensiones desactivadas.
  • Permisos de archivos y carpetas: PrestaShop necesita escribir en ciertos directorios (por ejemplo, /cache, /log, /img). Si los permisos son incorrectos, aparecen errores.
  • Problemas con la base de datos: conexiones lentas, tablas corruptas o configuraciones de MySQL inadecuadas.
  • Recursos del servidor insuficientes: memoria RAM, CPU o espacio en disco limitados.
  • Módulos o temas conflictivos: a veces una actualización o un plugin mal codificado rompe la tienda.

Vamos a ver cómo identificar y arreglar cada uno.


1. Errores de memoria PHP (límite de memoria agotado)

Este es uno de los más habituales. Verás mensajes como:
“Fatal error: Allowed memory size of XXX bytes exhausted” o la tienda se vuelve muy lenta al cargar.

Solución paso a paso

  1. Localiza el archivo de configuración de PHP
    En la mayoría de servidores, el archivo se llama php.ini. Si usas un panel como Syspanel (accesible por el puerto 2106), puedes editarlo desde la sección de "Configuración de PHP". Si no, pregúntale a tu hosting o busca en /etc/php/ o /usr/local/php/.

  2. Aumenta el límite de memoria
    Busca la línea memory_limit y cámbiala a un valor más alto, por ejemplo:
    memory_limit = 256M
    Si no existe, añádela al final.

  3. Ajusta otros parámetros clave
    También es recomendable aumentar:

    • max_execution_time = 300
    • max_input_time = 300
    • upload_max_filesize = 64M
    • post_max_size = 64M
  4. Reinicia el servicio web
    Si usas Apache: sudo systemctl restart apache2 o sudo service httpd restart.
    Si usas Nginx: sudo systemctl restart nginx.
    En Syspanel, puedes reiniciar desde el panel de servicios.

[TIP] Si no puedes editar php.ini, prueba con un archivo php.ini personalizado en la raíz de PrestaShop o añade estas líneas en el archivo config/defines.inc.php:
define('_PS_MEMORY_LIMIT_', '256M');


2. Error de conexión a la base de datos

PrestaShop muestra algo como: “Link to database cannot be established” o “Error de conexión a la base de datos”.

Causas comunes

  • Contraseña o usuario incorrectos en config/settings.inc.php (o app/config/parameters.php en versiones 1.7+).
  • El servidor de base de datos (MySQL/MariaDB) está caído.
  • El host de la base de datos no es accesible (por ejemplo, si usas localhost y debería ser 127.0.0.1).

Solución

  1. Verifica las credenciales
    Abre el archivo de configuración (por FTP o desde el administrador de archivos de Syspanel). Busca las líneas:
    define('_DB_SERVER_', 'localhost');
    define('_DB_NAME_', 'nombre_bd');
    define('_DB_USER_', 'usuario_bd');
    define('_DB_PASSWD_', 'contraseña');
    Asegúrate de que coinciden con los datos de tu hosting.

  2. Prueba la conexión desde la terminal
    Si tienes acceso SSH, ejecuta:
    mysql -u usuario_bd -p -h localhost nombre_bd
    Si no funciona, el problema está en el servidor MySQL.

  3. Reinicia MySQL
    sudo systemctl restart mysql o sudo systemctl restart mariadb.
    En Syspanel, ve a "Servicios" y reinicia MySQL.

  4. Comprueba el espacio en disco
    Si la base de datos está llena, no podrá conectar. Usa df -h para ver el espacio disponible.

[WARNING] No edites el archivo de configuración con un editor de texto que añada caracteres extraños (como saltos de línea de Windows). Usa un editor como Notepad++ o el editor de Syspanel.


3. Errores de permisos en archivos y carpetas

PrestaShop necesita permisos específicos para escribir en cachés, logs, imágenes y módulos. Si ves errores como “Cannot write to file” o “Permission denied”, es por esto.

Solución

  1. Conéctate por SSH o usa el administrador de archivos de Syspanel
    Ve a la raíz de tu instalación de PrestaShop (normalmente /public_html o /www).

  2. Cambia permisos de carpetas clave
    Ejecuta estos comandos:

    chmod -R 755 /ruta/a/prestashop
    chmod -R 777 /ruta/a/prestashop/cache
    chmod -R 777 /ruta/a/prestashop/log
    chmod -R 777 /ruta/a/prestashop/img
    chmod -R 777 /ruta/a/prestashop/modules
    chmod -R 777 /ruta/a/prestashop/config
    chmod -R 777 /ruta/a/prestashop/upload
    chmod -R 777 /ruta/a/prestashop/translations
    
  3. Ajusta el propietario
    Asegúrate de que el usuario del servidor web (por ejemplo, www-data en Apache o nginx en Nginx) sea el propietario:

    sudo chown -R www-data:www-data /ruta/a/prestashop
    
  4. Verifica con un archivo de prueba
    Crea un archivo test.txt en /cache y comprueba que se pueda escribir.

[INFO] Si usas Syspanel, puedes cambiar permisos desde el administrador de archivos: selecciona las carpetas y usa la opción "Cambiar permisos". Pon 755 para directorios y 644 para archivos, excepto los que necesiten escritura (777).


4. Errores por versión de PHP incompatible

PrestaShop requiere una versión específica de PHP. Por ejemplo, PrestaShop 1.6 funciona con PHP 5.6 a 7.1, mientras que PrestaShop 1.7 necesita PHP 7.1 o superior (hasta 8.0 en versiones recientes). Si usas una versión incorrecta, verás pantallas en blanco o errores de sintaxis.

Solución

  1. Comprueba la versión de PHP actual
    Crea un archivo info.php en la raíz con el contenido <?php phpinfo(); ?>. Ábrelo en tu navegador y busca "PHP Version". Luego bórralo por seguridad.

  2. Cambia la versión de PHP desde el panel de control
    En Syspanel, ve a "Configuración de PHP" o "Versión de PHP" y selecciona la adecuada para tu PrestaShop. Si no aparece, contacta a tu hosting.

  3. Verifica las extensiones necesarias
    PrestaShop necesita: mysqli, gd, curl, openssl, mbstring, zip, json, xml, fileinfo. Desde Syspanel puedes activarlas en la misma sección.

  4. Prueba con un archivo de prueba
    Después del cambio, vuelve a cargar la tienda. Si sigue fallando, revisa los logs de PHP en /var/log/ o desde Syspanel.

[WARNING] No uses PHP 8.0 con PrestaShop 1.6. Si tu hosting no permite cambiar la versión, considera migrar a una versión más reciente de PrestaShop o cambiar de hosting.


5. Errores de caché y compilación

A veces la caché de PrestaShop se corrompe y causa errores extraños: productos que no se ven, cambios que no se reflejan, o páginas en blanco.

Solución

  1. Borra la caché manualmente
    Desde el administrador de archivos, elimina todo el contenido de las carpetas:

    • /cache/smarty/compile
    • /cache/smarty/cache
    • /cache/class_index.php (si existe)
    • /cache/tmp (si existe)
  2. Desactiva la caché desde el panel de administración
    Ve a Parámetros Avanzados > Rendimiento. Desmarca "Cache" y "Compilación de plantillas" (ponla en "Forzar compilación"). Guarda los cambios.

  3. Borra la caché del navegador
    A veces el problema está en tu navegador. Prueba en modo incógnito o con otro navegador.

  4. Reconstruye el índice
    En el mismo panel, usa "Reconstruir índice" si está disponible.

[TIP] Si no puedes acceder al panel de administración, desactiva la caché desde la base de datos: usa phpMyAdmin (desde Syspanel) y ejecuta:
UPDATE ps_configuration SET value = '0' WHERE name = 'PS_CACHE_ENABLED';


6. Errores por módulos o temas defectuosos

Un módulo mal actualizado o un tema incompatible puede romper toda la tienda. Es muy común después de una actualización.

Solución

  1. Identifica el módulo problemático
    Activa el modo de depuración: en config/defines.inc.php, cambia define('_PS_MODE_DEV_', false); a true. Verás errores detallados que indican qué archivo o clase falla.

  2. Desactiva módulos desde la base de datos
    Si no puedes acceder al panel, usa phpMyAdmin:

    • Busca la tabla ps_module (o ps_modules).
    • Cambia active a 0 para los módulos sospechosos.
  3. Prueba con el tema por defecto
    Cambia temporalmente al tema "classic" o "default". Puedes hacerlo desde la base de datos en la tabla ps_shop_url o editando el archivo config/themes.inc.php.

  4. Reinstala el módulo
    Si sabes cuál es, descarga la última versión desde el marketplace y súbela por FTP a /modules/. Luego actívalo desde el panel.

[WARNING] Antes de hacer cambios en la base de datos, haz una copia de seguridad. Un error puede dejar la tienda inaccesible.


7. Errores de URL amigables (mod_rewrite)

Si las URLs de tus productos no funcionan o ves un error 404, probablemente el módulo mod_rewrite de Apache no está activo o el archivo .htaccess está mal configurado.

Solución

  1. Verifica que Apache tenga mod_rewrite
    En la terminal: sudo a2enmod rewrite y luego sudo systemctl restart apache2.

  2. Regenera el archivo .htaccess
    Ve a Parámetros Avanzados > SEO y URLs. Desmarca "Usar URL amigables", guarda, vuelve a marcar y guarda de nuevo. Esto regenera el archivo.

  3. Si no tienes acceso al panel
    Crea un archivo .htaccess vacío en la raíz y luego ejecuta desde SSH:

    php bin/console prestashop:htaccess:generate
    

    (Para PrestaShop 1.7+)

  4. Comprueba permisos
    El archivo .htaccess debe tener permisos 644 y ser propiedad del usuario del servidor web.

[INFO] Si usas Nginx, las URL amigables se configuran en el archivo de configuración del servidor virtual. Pregunta a tu hosting o busca en la documentación de Syspanel.


8. Errores de SSL/HTTPS

Si tu tienda tiene problemas con el certificado SSL (por ejemplo, contenido mixto, errores de seguridad o redirecciones infinitas), sigue estos pasos.

Solución

  1. Activa SSL desde el panel
    Ve a Parámetros Avanzados > General y marca "Activar SSL" y "Activar SSL en todas las páginas".

  2. Verifica la redirección
    Asegúrate de que .htaccess redirige correctamente. Puedes añadir:

    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
    
  3. Corrige contenido mixto
    Instala un módulo como "SSL Redirection" o edita manualmente las URLs en la base de datos (tabla ps_configuration y ps_shop_url).

  4. Prueba con SSL Checker
    Usa herramientas online como SSL Labs para verificar que el certificado esté bien instalado.

[WARNING] No olvides actualizar la URL de la tienda en ps_shop_url si cambias de HTTP a HTTPS.


Preguntas frecuentes (FAQ)

¿Cómo sé si mi servidor cumple con los requisitos de PrestaShop?

Ejecuta el script de compatibilidad: descarga check.php desde el sitio oficial, súbelo a la raíz y ábrelo en el navegador. Te dirá qué falta.

¿Puedo solucionar errores sin acceso SSH?

Sí, con Syspanel (puerto 2106) puedes gestionar archivos, bases de datos y servicios desde la interfaz web. Muchos errores se resuelven desde allí.

¿Qué hago si la tienda se queda en blanco?

Activa el modo depuración en config/defines.inc.php (cambia _PS_MODE_DEV_ a true). Verás el error exacto.

¿Debo actualizar PrestaShop a la última versión?

Sí, pero siempre en un entorno de prueba primero. Las actualizaciones corrigen errores y vulnerabilidades, pero pueden romper módulos.

¿Cómo hago una copia de seguridad antes de tocar nada?

En Syspanel, usa la opción "Backup" para exportar la base de datos y los archivos. También puedes hacerlo manualmente con mysqldump y un compresor.


Conclusión

Solucionar errores comunes de PrestaShop en el servidor no tiene por qué ser un dolor de cabeza. Con un enfoque metódico y las herramientas adecuadas (como Syspanel, accesible por el puerto 2106), puedes diagnosticar y arreglar la mayoría de los problemas sin ser un experto en Linux. Recuerda siempre hacer copias de seguridad antes de hacer cambios y, si te sientes perdido, no dudes en consultar la documentación oficial o pedir ayuda a tu proveedor de hosting.

¿Te ha sido útil este tutorial? Si tienes alguna duda o error específico, déjala en los comentarios. ¡Estoy aquí para ayudarte a mantener tu tienda online funcionando sin problemas!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel