¿Qué es el Error Allowed Memory Size en PrestaShop?
El error Fatal error: Allowed memory size of X bytes exhausted es uno de los problemas más comunes a los que se enfrentan los administradores de tiendas online en PrestaShop. Ocurre cuando un script PHP, ya sea al actualizar un módulo, compilar la plantilla o generar el mapa del sitio, intenta consumir más memoria RAM de la que tiene asignada por defecto en el servidor.
Causas Principales del Error de Memoria en PrestaShop
Las razones más frecuentes por las que se agota el límite de memoria en PrestaShop incluyen:
- Ejecución de scripts pesados durante la importación masiva de productos.
- Módulos mal optimizados o incompatibles que generan bucles de consumo.
- Un límite de memoria PHP configurado con un valor demasiado bajo (por ejemplo, 64M o 128M) en el archivo
php.ini. - Procesos de actualización de versiones de PrestaShop que requieren recursos adicionales.
Método 1: Modificar el Límite de Memoria en el Archivo php.ini
La forma más directa de solucionar este inconveniente es incrementar la directiva memory_limit en la configuración de PHP de tu servidor.
- Accede al panel de control de tu hosting (cPanel, Plesk o similar) y abre el Administrador de Archivos.
- Navega hasta la raíz de tu instalación de PrestaShop.
- Busca el archivo
php.ini(si no existe, puedes crearlo con ese nombre exacto). - Añade o modifica la siguiente línea con un valor adecuado (por ejemplo, 512M):
memory_limit = 512M - Guarda los cambios y recarga tu tienda PrestaShop.
Método 2: Editar el Archivo .htaccess
Si tu proveedor de hosting no permite modificar el archivo php.ini directamente, puedes intentar aumentar el límite de memoria a través del archivo .htaccess ubicado en la raíz de tu tienda.
- Abre tu cliente FTP o el administrador de archivos de tu hosting.
- Localiza el archivo
.htaccessen la carpeta principal de PrestaShop. - Edítalo y añade la siguiente directiva al principio o al final del archivo:
php_value memory_limit 512M - Guarda los cambios y verifica si el error ha desapareciendo al acceder nuevamente al panel de administración o la tienda.
Método 3: Modificar el Archivo config.inc.php de PrestaShop
En situaciones donde los métodos anteriores no surten efecto debido a restricciones del servidor, puedes forzar el límite de memoria directamente desde el código fuente de PrestaShop.
- Accede a los archivos de tu tienda y entra en la carpeta
config/. - Busca y abre el archivo
config.inc.php. - Añade la siguiente línea de código justo después de la etiqueta de apertura
<?php:ini_set('memory_limit', '512M'); - Guarda los cambios y limpia la caché de PrestaShop para comprobar que el sistema vuelve a funcionar con normalidad.