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

Cómo aumentar el límite de memoria en PrestaShop con DirectAdmin

Actualizado el 2 de noviembre de 2025

¿Por qué PrestaShop me da un error de memoria?

Si estás leyendo esto, es muy probable que hayas visto un mensaje parecido a este: "Fatal error: Allowed memory size of X bytes exhausted" o un aviso de error memoria PrestaShop en tu panel de administración. No te preocupes, es uno de los problemas más comunes en tiendas online y, por suerte, tiene una solución clara y sencilla.

Este error significa que PHP, el lenguaje en el que está escrito PrestaShop, tiene un límite de cuánta memoria puede usar por cada "tarea" o script. Cuando tu tienda crece, añades módulos, productos o tu catálogo es muy grande, las operaciones (como generar un informe o procesar una imagen) necesitan más memoria de la permitida por defecto.

El valor que controla esto se llama memory_limit PrestaShop y, aunque en un hosting compartido suele estar limitado, con un panel como DirectAdmin tienes el control total para aumentarlo. Vamos a ver cómo hacerlo paso a paso, sin necesidad de ser un experto en servidores.

Antes de empezar: ¿Qué necesito y qué voy a tocar?

Vamos a trabajar con dos cosas principalmente: el archivo php.ini (el "jefe" de la configuración de PHP) y el archivo .htaccess (un archivo de configuración específico de tu tienda). No te asustes, no vamos a romper nada, solo vamos a cambiar un número.

Necesitarás tener acceso a DirectAdmin (el panel de control de tu hosting) y, idealmente, acceso a un cliente FTP o al administrador de archivos que ya viene incluido en DirectAdmin. Si no sabes qué es FTP, no pasa nada, con el administrador de archivos de DirectAdmin es suficiente.

[INFO] Este tutorial es para configuraciones donde tienes un plan de hosting con DirectAdmin. Si tu hosting usa otro panel, el proceso puede variar ligeramente, pero los conceptos son los mismos.

Método 1: La vía rápida desde tu panel de administración de PrestaShop

Antes de meternos en archivos de configuración, hay una opción muy sencilla que a veces funciona. PrestaShop tiene un archivo llamado defines.inc.php que puedes editar para forzar un límite de memoria más alto.

  1. Accede a tu hosting por FTP o al Administrador de Archivos en DirectAdmin.
  2. Navega hasta la carpeta config de tu instalación de PrestaShop (normalmente en public_html/config o dominio.com/config).
  3. Busca el archivo llamado defines.inc.php.
  4. Ábrelo con el editor de texto que te ofrece DirectAdmin (clic derecho -> Editar o Editar con código).
  5. Busca una línea similar a esta: define('_PS_MEMORY_LIMIT_', '256M');
  6. Cambia el valor 256M por algo mayor, por ejemplo 512M o incluso 1024M (que es 1GB). Guarda el archivo.

Este método es efectivo, pero a veces el servidor puede tener una configuración que lo anula. Si después de esto el error memoria PrestaShop persiste, pasa al Método 2, que es el más fiable.

[TIP] No pongas un valor excesivamente alto (como 2GB) si no lo necesitas. Un valor de 512M o 768M es más que suficiente para la gran mayoría de tiendas online.

Método 2: Modificar el límite de memoria en DirectAdmin (método definitivo)

Este es el método más robusto porque modifica la configuración del servidor directamente. Vamos a usar el panel de DirectAdmin para editar el archivo php.ini de tu dominio.

Paso 1: Accede al administrador de archivos de DirectAdmin

  1. Inicia sesión en tu panel de DirectAdmin.
  2. Busca y haz clic en el icono "Administrador de Archivos" (File Manager). Normalmente está en la sección "Archivos" o "Cuenta".
  3. Entrarás en la raíz de tu cuenta. Normalmente verás una carpeta llamada public_html (o el nombre de tu dominio). Esta es la carpeta donde está tu tienda.

Paso 2: Encuentra el archivo php.ini

Dentro de public_html, busca un archivo llamado php.ini. Si no lo ves, puede que esté oculto.

  1. En el administrador de archivos, busca una opción que diga "Mostrar archivos ocultos" o "Mostrar archivos de puntos" y actívala.
  2. Si el archivo php.ini existe, genial. Si no existe, tendrás que crearlo. Haz clic en "Crear archivo" y nómbralo exactamente php.ini.

Paso 3: Edita el valor memory_limit

  1. Haz clic derecho sobre el archivo php.ini y selecciona "Editar" o "Editor de código".
  2. Se abrirá un editor. Busca la línea que dice memory_limit =. Si no existe, la añadiremos al final del archivo.
  3. Si la línea existe, cámbiala. Si no, al final del archivo escribe esto:
memory_limit = 512M
  1. También puedes ajustar otros valores útiles si tu tienda va lenta, como max_execution_time (el tiempo máximo que un script puede ejecutarse). Por ejemplo, puedes ponerlo en 300 segundos añadiendo esta línea:
max_execution_time = 300

[WARNING] Es muy importante que el archivo php.ini esté en la carpeta public_html (la raíz de tu dominio). Si lo pones en una subcarpeta, no tendrá efecto en toda tu tienda.

  1. Guarda los cambios. El editor te preguntará si quieres guardar, hazlo.

Paso 4: Verifica el cambio

Para asegurarte de que el cambio se ha aplicado, puedes hacer una comprobación rápida:

  1. Ve a tu panel de administración de PrestaShop.
  2. Ve a Parámetros avanzados -> Información.
  3. Busca la línea que dice "Límite de memoria" o "Memory limit". Debería reflejar el nuevo valor (por ejemplo, 512M).

Si el valor no ha cambiado, puede que tu hosting tenga un valor "maestro" que anula el tuyo. En ese caso, tendrás que contactar con tu proveedor de hosting, pero es poco común.

Método 3: Usando el archivo .htaccess (plan B)

Si por alguna razón no puedes crear o editar el php.ini, o tu servidor lo ignora, hay un plan B: el archivo .htaccess. Este archivo permite sobrescribir la configuración de PHP en muchos servidores.

  1. En el mismo administrador de archivos, busca el archivo .htaccess dentro de public_html. Asegúrate de tener activada la opción de "Mostrar archivos ocultos".
  2. Edítalo con el mismo método.
  3. Al principio del archivo (después de la línea <?php si existe, o al principio), añade estas líneas:
php_value memory_limit 512M
php_value max_execution_time 300
  1. Guarda el archivo.

[INFO] Este método no funciona en todos los servidores, especialmente en aquellos que usan "PHP-FPM" o configuraciones más modernas. Si no funciona, vuelve al Método 2, que es el más fiable en DirectAdmin.

Solución de problemas comunes (FAQ)

He cambiado el valor y sigo viendo el error de memoria, ¿qué hago?

  1. Revisa que has editado el archivo correcto: Asegúrate de que el php.ini esté en public_html y no en una subcarpeta.
  2. Comprueba si tu hosting usa "Multi-PHP": Algunos planes de DirectAdmin tienen un selector de versión de PHP. En ese selector, a veces hay una opción para configurar los límites. Busca en tu panel de DirectAdmin una sección llamada "Configuración de PHP" o "Selector de PHP" y ajusta el valor desde ahí.
  3. Limpia la caché: PrestaShop guarda archivos de caché. Ve a Parámetros avanzados -> Rendimiento y limpia la caché. A veces el error persiste por una caché antigua.
  4. Desactiva módulos recientes: Si el error empezó después de instalar un módulo nuevo, desactívalo para ver si el problema desaparece. A veces un módulo mal optimizado consume mucha memoria.

¿Qué valor de memory_limit PrestaShop es el recomendado?

Para una tienda pequeña o mediana (menos de 1,000 productos), 256M es el mínimo recomendable. Para tiendas más grandes o con muchos módulos, te recomiendo 512M o 768M. Si tienes una tienda enorme y con muchas imágenes, 1024M (1GB) es un valor seguro. No es recomendable superar 1GB en un hosting compartido.

¿Puedo dañar mi tienda al cambiar esto?

No, es un cambio de configuración estándar y reversible. Solo asegúrate de no borrar otras líneas del archivo. Si algo sale mal, puedes volver a poner el valor original o contactar con tu soporte. Siempre es buena idea hacer una copia de seguridad del archivo antes de editarlo.

¿Esto hará que mi tienda vaya más rápido?

No directamente. Aumentar la memoria no hace que la tienda sea más rápida, sino que evita errores cuando necesita hacer tareas complejas. Para la velocidad, tendrás que trabajar en otros aspectos como la caché, la optimización de imágenes y el hosting en sí.

¿Y si mi hosting no me permite editar php.ini?

Si estás en un plan muy básico de hosting compartido, es posible que no tengas esta opción. En ese caso, contacta con tu proveedor y pídeles que aumenten el memory_limit de tu cuenta. Es una petición muy común y deberían hacerlo sin problema.

Conclusión: Tu tienda ya no se quedará sin memoria

Aumentar el memory_limit PrestaShop es una de las primeras cosas que debes hacer cuando tu tienda empieza a crecer y te encuentras con errores de memoria. Con DirectAdmin, el proceso es muy accesible incluso para usuarios sin experiencia técnica.

Hemos visto tres métodos: el rápido desde PrestaShop, el fiable desde php.ini y el plan B con .htaccess. Te recomiendo que pruebes en este orden. La mayoría de las veces, con el Método 2 tendrás la solución definitiva.

Recuerda que este cambio es parte del mantenimiento básico de tu tienda. Si el error persiste después de aplicar estos cambios, puede que el problema no sea solo la memoria, sino un módulo conflictivo o un servidor demasiado limitado para tu tráfico. En ese caso, no dudes en contactar con tu soporte técnico, porque ahora ya tienes el conocimiento para explicarles exactamente qué has probado.

¡Espero que esto te haya ayudado y que tu tienda vuelva a funcionar 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