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

Cómo aumentar el límite de memoria PHP para PrestaShop (cPanel, Plesk, DirectAdmin)

Actualizado el 27 de septiembre de 2025

¿Por qué PrestaShop me da errores de memoria PHP?

Si estás leyendo esto, probablemente te has encontrado con un mensaje blanco y frustrante en tu tienda online. Algo como "Fatal error: Allowed memory size of X bytes exhausted" o "Error de memoria PHP". No te preocupes, es uno de los problemas más comunes en PrestaShop y tiene solución.

Este error significa que tu servidor tiene un límite de memoria asignado a cada script PHP, y tu tienda necesita más espacio para funcionar correctamente. Es como si tu tienda fuera un gran almacén y el servidor solo te dejara usar una pequeña habitación. Cuando intentas meter más productos, todo se bloquea.

La buena noticia es que aumentar el límite de memoria PHP para PrestaShop es un proceso sencillo que puedes hacer tú mismo, sin necesidad de ser un experto en programación. En esta guía te explicaré paso a paso cómo hacerlo en los tres paneles de control más utilizados: cPanel, Plesk y DirectAdmin. También te daré trucos para Syspanel (antes conocido como HestiaCP, accesible por el puerto 2106) y otras alternativas.


¿Cuánta memoria necesita PrestaShop realmente?

Antes de ponernos manos a la obra, es importante saber a dónde queremos llegar. PrestaShop es una plataforma bastante exigente, especialmente si tienes muchos módulos, productos o un tráfico elevado.

Valores recomendados de memory_limit para PrestaShop

Tipo de tiendaMemoria recomendada
Tienda pequeña (menos de 100 productos)128M
Tienda mediana (100-1000 productos)256M
Tienda grande (más de 1000 productos o muchos módulos)512M
Tienda con catálogo masivo o tráfico intenso1024M (1G)

El valor predeterminado en muchos servidores es 128M, pero para evitar problemas recurrentes, lo ideal es que configures al menos 256M. Si tu tienda ya te ha dado errores varias veces, ve directo a 512M o incluso 1G.

[INFO] El error de memoria suele aparecer cuando PrestaShop intenta ejecutar tareas pesadas como importar productos, generar informes, actualizar módulos o procesar el carrito de compra. Si ves el error en el panel de administración, es que el límite actual es insuficiente para tu configuración.


Método 1: Aumentar memoria PHP en cPanel

cPanel es uno de los paneles más populares y fáciles de usar. Aquí tienes varias opciones para subir el límite de memoria PHP.

Opción A: Usar el selector de versiones PHP (MultiPHP Manager)

  1. Inicia sesión en tu cPanel con tus credenciales de hosting.

  2. Busca la sección Software o Motor de scripts y haz clic en Select PHP Version (o MultiPHP Manager, según la versión de cPanel).

  3. Se abrirá una pantalla donde puedes seleccionar la versión de PHP que usa tu dominio. Al lado hay un enlace que dice Switch to PHP Options (Cambiar a opciones PHP) o un icono de engranaje.

  4. Haz clic en ese enlace o engranaje. Se mostrará una lista con todas las directivas de configuración de PHP.

  5. Busca la línea que dice memory_limit. En la columna de valor, verás algo como 128M o 256M.

  6. Cambia el valor a 512M o el que necesites. Asegúrate de escribir la unidad M (megas) o G (gigas) sin espacios. Por ejemplo: 512M o 1G.

  7. Haz clic en Apply (Aplicar) o Save (Guardar) para guardar los cambios.

  8. Espera unos segundos y verifica que el cambio se ha aplicado.

Opción B: Crear un archivo .htaccess

Si no encuentras el selector de PHP, siempre puedes crear un archivo .htaccess en la raíz de tu tienda.

  1. Accede al Administrador de archivos de cPanel.

  2. Navega hasta la carpeta donde está instalado PrestaShop (normalmente public_html o una subcarpeta).

  3. Busca un archivo llamado .htaccess. Si no existe, puedes crear uno nuevo con el botón + File (Archivo).

  4. Haz clic derecho sobre el archivo y selecciona Edit (Editar).

  5. Añade esta línea al final del archivo:

<IfModule mod_php7.c>
    php_value memory_limit 512M
</IfModule>
  1. Guarda los cambios y cierra el editor.

[WARNING] Si tu servidor usa PHP-FPM (lo más probable en hosting modernos), el archivo .htaccess no funcionará. En ese caso, usa la opción A o la C.

Opción C: Modificar el archivo php.ini

Algunos hosting te permiten editar el php.ini directamente.

  1. Ve al Administrador de archivos y localiza el php.ini en la raíz o en una carpeta de configuración.

  2. Si no existe, puedes crear uno nuevo en la raíz de tu tienda.

  3. Busca la línea memory_limit y cambia su valor. Si no está, añade esta línea:

memory_limit = 512M
  1. Guarda el archivo.

Método 2: Aumentar memoria PHP en Plesk

Plesk tiene una interfaz un poco diferente, pero el proceso es igual de sencillo.

Opción A: Desde el panel de suscripción

  1. Accede a tu panel de Plesk con las credenciales de administrador.

  2. Ve a Websites & Domains (Sitios web y dominios) y selecciona tu dominio.

  3. Haz clic en PHP Settings (Configuración de PHP) o PHP Setup (Configuración PHP).

  4. Se abrirá una pantalla con todas las directivas de configuración.

  5. Busca memory_limit. Puede que tengas que desplegar la lista de opciones avanzadas.

  6. Cambia el valor al deseado (por ejemplo, 512M).

  7. Haz clic en OK o Apply para guardar.

Opción B: Usando el archivo .htaccess

Al igual que en cPanel, puedes usar el .htaccess.

  1. Ve a File Manager (Administrador de archivos) desde tu panel de Plesk.

  2. Localiza la carpeta httpdocs o public_html de tu dominio.

  3. Busca o crea el archivo .htaccess.

  4. Añade las mismas líneas que te mostré en cPanel:

<IfModule mod_php7.c>
    php_value memory_limit 512M
</IfModule>
  1. Guarda los cambios.

[TIP] En Plesk, a veces es necesario reiniciar PHP-FPM para que los cambios surtan efecto. Puedes hacerlo desde el panel en Tools & Settings > PHP Settings y reiniciando el servicio.


Método 3: Aumentar memoria PHP en DirectAdmin

DirectAdmin es otro panel muy común en hosting de bajo coste y tiene su propio sistema de configuración.

Opción A: Desde el panel de opciones PHP

  1. Inicia sesión en DirectAdmin.

  2. Ve a Account Manager (Administrador de cuenta) y busca PHP Configuration (Configuración PHP) o PHP Settings.

  3. Se mostrará una lista de directivas. Busca memory_limit.

  4. Cambia el valor a 512M o el que necesites.

  5. Guarda los cambios con el botón Save (Guardar).

Opción B: Editando el archivo php.ini

  1. En DirectAdmin, ve a File Manager (Administrador de archivos).

  2. Navega hasta public_html o la carpeta raíz de tu tienda.

  3. Busca php.ini o php.ini.default. Si no existe, créalo.

  4. Añade o modifica la línea:

memory_limit = 512M
  1. Guarda el archivo.

Opción C: Desde la línea de comandos (SSH)

Si tienes acceso SSH y sabes lo que haces:

  1. Conéctate por SSH a tu servidor.

  2. Ejecuta el siguiente comando para localizar el php.ini:

php -i | grep "Loaded Configuration File"
  1. Edita el archivo con un editor como nano:
nano /etc/php/7.4/apache2/php.ini
  1. Busca memory_limit y cámbialo.

  2. Guarda y reinicia Apache o PHP-FPM:

sudo systemctl restart apache2

Método 4: Aumentar memoria PHP en Syspanel (HestiaCP)

Si tu hosting usa Syspanel (anteriormente HestiaCP), el proceso es diferente. Recuerda que el acceso a este panel se realiza a través del puerto 2106 (por ejemplo, https://tu-dominio.com:2106).

  1. Accede a tu panel Syspanel usando el puerto 2106.

  2. Ve a Web y selecciona tu dominio.

  3. Busca la opción de Configuración PHP o PHP-FPM.

  4. En muchos casos, la configuración se hace editando el archivo php.ini del dominio. Puedes encontrarlo en la ruta:

/home/usuario/conf/web/php.ini
  1. Edita la línea memory_limit y cambia su valor.

  2. Guarda los cambios y reinicia PHP-FPM desde el panel o con el comando:

sudo systemctl restart php-fpm

[INFO] Syspanel es una alternativa gratuita y muy potente a cPanel. Si tu hosting lo usa, no te asustes por la interfaz: es muy similar a los demás paneles. Y recuerda, siempre accede por el puerto 2106.


Método 5: Solución rápida con un archivo en la raíz de PrestaShop

Si ninguno de los métodos anteriores funciona (o no tienes acceso al panel), puedes crear un pequeño archivo PHP que fuerce el límite de memoria solo para PrestaShop.

  1. Entra en el Administrador de archivos de tu hosting.

  2. Ve a la carpeta raíz de PrestaShop (donde están las carpetas config, classes, controllers, etc.).

  3. Busca el archivo config.inc.php (no confundir con config).

  4. Ábrelo con el editor de texto.

  5. Al principio del archivo (después de las etiquetas <?php), añade esta línea:

ini_set('memory_limit', '512M');
  1. Guarda el archivo.

[TIP] Este método es el más rápido, pero solo funciona si tu hosting permite que PHP sobreescriba su configuración desde el script. En algunos hosting compartidos muy restrictivos, esto no funcionará.


Cómo verificar que el cambio se ha aplicado correctamente

Después de realizar cualquiera de estos cambios, es importante verificar que realmente se ha subido el límite de memoria. Puedes hacerlo de dos maneras:

Método 1: Desde el panel de administración de PrestaShop

  1. Ve a tu panel de administración de PrestaShop.

  2. Navega a Parámetros avanzados > Información (o Información del servidor).

  3. Busca la sección Configuración del sistema o Parámetros PHP.

  4. Ahí verás el valor actual de memory_limit. Debería mostrar el nuevo valor que has configurado.

Método 2: Creando un archivo de prueba

  1. Crea un archivo llamado info.php en la raíz de tu tienda.

  2. Ábrelo con el editor y escribe:

<?php
phpinfo();
?>
  1. Accede desde tu navegador a www.tu-dominio.com/info.php.

  2. Busca la línea memory_limit en la tabla de configuración.

  3. Cuando termines, borra este archivo inmediatamente por seguridad.

[WARNING] Nunca dejes un archivo info.php en tu servidor. Expone información sensible de tu configuración a los atacantes. Bórralo en cuanto verifiques el cambio.


Errores comunes y cómo solucionarlos

El cambio no se aplica

Si has cambiado el valor pero el error persiste, puede ser por:

  • Caché de PHP: Reinicia PHP-FPM o Apache desde tu panel.
  • Caché de PrestaShop: Limpia la caché desde Parámetros avanzados > Rendimiento > Vaciar la caché.
  • Múltiples archivos php.ini: Asegúrate de que estás editando el archivo correcto. Puede haber varios.

El hosting no me deja cambiarlo

Algunos hosting compartidos muy restrictivos no permiten modificar estos valores. En ese caso:

  • Contacta con tu proveedor de hosting y pide que aumenten el memory_limit.
  • Considera cambiar a un plan superior o a un VPS.

Error 500 después de cambiar

Si al modificar el .htaccess o php.ini te aparece un error 500, es que has introducido un valor incorrecto o la sintaxis no es válida.

  • Verifica que el valor tiene la unidad correcta (M o G).
  • Comprueba que no hay espacios extraños.
  • Revisa que estás usando los paréntesis y comillas correctas en el .htaccess.

Preguntas frecuentes (FAQ)

¿Qué es exactamente el memory_limit?

Es el máximo de memoria que un script PHP puede usar antes de detenerse. Si PrestaShop necesita más de ese límite, se produce el error fatal.

¿Puedo poner un valor demasiado alto?

Técnicamente sí, pero no es recomendable. Si pones 1G en un hosting compartido, tu cuenta puede ser suspendida por abusar de los recursos del servidor. Empieza con 256M o 512M.

¿Esto afecta al rendimiento de mi tienda?

Un valor más alto permite que PrestaShop use más memoria, lo que puede acelerar ciertas operaciones. Pero si tu servidor no tiene suficiente RAM física, podría ralentizarse. Es un equilibrio.

¿Debo cambiar también el límite de tiempo de ejecución?

Si tienes problemas con importaciones lentas, sí. Busca max_execution_time y cámbialo a 300 (5 minutos) o 600 (10 minutos).

¿Esto funciona para otras plataformas como WooCommerce o Magento?

Sí, los mismos métodos sirven para cualquier plataforma PHP, aunque los valores recomendados pueden variar.


Resumen final

Aumentar el límite de memoria PHP en PrestaShop es una de las primeras cosas que debes hacer cuando tu tienda empieza a crecer o cuando instalas muchos módulos. Con esta guía tienes todas las herramientas para hacerlo tú mismo en cualquier panel de control:

  • cPanel: Usa MultiPHP Manager o crea un .htaccess.
  • Plesk: Configura PHP Settings desde el panel.
  • DirectAdmin: Usa la configuración PHP o edita el php.ini.
  • Syspanel (HestiaCP): Edita el php.ini del dominio, siempre accediendo por el puerto 2106.
  • Alternativa universal: Añade ini_set('memory_limit', '512M'); al archivo config.inc.php.

Empieza con 256M y sube si es necesario. Recuerda limpiar la caché de PrestaShop después de hacer los cambios y verificar con phpinfo() que todo se ha aplicado correctamente.

Si después de todos estos pasos sigues teniendo el error de memoria, el problema puede ser más profundo: quizás necesitas optimizar tu base de datos, eliminar módulos innecesarios o considerar un servidor con más recursos. Pero en el 90% de los casos, subir el memory_limit soluciona el problema de inmediato.

¿Tienes alguna duda o tu caso es especial? Déjala en los comentarios y te ayudaré a resolverla. ¡Tu tienda online merece funcionar sin errores!

¿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