Cómo aumentar el límite de memoria de PHP en PrestaShop (desde Plesk)
¿Tu tienda PrestaShop te muestra el temido error de memoria PHP? Tranquilo, es uno de los problemas más comunes cuando instalas módulos nuevos, actualizas el sistema o tu catálogo de productos crece. La buena noticia es que solucionarlo es más fácil de lo que piensas, y en esta guía te voy a enseñar paso a paso cómo aumentar el límite de memoria de PHP en PrestaShop desde Plesk, sin necesidad de ser un experto en servidores.
Vamos a desgranar todo el proceso, desde entender qué significa ese error hasta aplicar la solución definitiva en tu panel de control. Al final, serás capaz de hacerlo tú mismo en menos de 5 minutos.
¿Qué significa el error de memoria en PrestaShop?
Cuando ves un mensaje como "Fatal error: Allowed memory size of X bytes exhausted" o el típico "Error de memoria de PrestaShop", lo que te está diciendo tu tienda es que el script que está intentando ejecutar (por ejemplo, un módulo de envío o el propio panel de administración) necesita más memoria de la que PHP tiene permitido usar por defecto.
Piensa en ello como una oficina: PHP es el trabajador y la memoria es su escritorio. Si le das un escritorio muy pequeño (por ejemplo, 64MB) y le pides que maneje un catálogo con 10,000 productos, se quedará sin espacio y tirará todo al suelo, mostrando un error.
El valor por defecto en muchos servidores compartidos suele ser 64M o 128M. Para una tienda online funcional con varios módulos, lo recomendable es tener al menos 256M o incluso 512M si usas muchos plugins.
Requisitos previos antes de tocar nada
Antes de lanzarnos a modificar la configuración, asegúrate de tener esto listo:
- Acceso a Plesk: Necesitas las credenciales de administrador o de un usuario con permisos sobre el dominio de tu tienda.
- Saber qué versión de PHP usas: Esto lo veremos en los siguientes pasos, pero es crucial porque la interfaz ha cambiado ligeramente entre versiones de Plesk (la más común ahora es la de Plesk Obsidian).
- Una copia de seguridad: Aunque este cambio es reversible y poco invasivo, siempre es buena práctica tener una copia de seguridad reciente de tu tienda por si acaso.
Método 1: Aumentar memory_limit desde el panel de Plesk (La forma más fácil y segura)
Este es el método recomendado porque Plesk gestiona los archivos de configuración por ti, evitando errores de sintaxis. Vamos a ello.
Paso 1: Accede a tu dominio en Plesk
Abre tu navegador y entra a tu panel de Plesk (normalmente algo como https://tu-dominio:8443 o https://plesk.tu-dominio.com). Una vez dentro, verás el listado de tus dominios. Busca el que corresponde a tu tienda PrestaShop y haz clic en él.
Paso 2: Encuentra la sección de PHP
Dentro del panel de tu dominio, tienes que buscar la sección que se llama "Configuración de PHP" o "PHP Settings". En Plesk Obsidian, suele estar en la pestaña de "Hosting y DNS" o directamente en el menú lateral. Haz clic en ella.
Paso 3: Localiza el ajuste memory_limit
Verás una lista larga de parámetros de configuración. No te asustes, solo nos interesa uno. Busca en la lista (o usa el buscador interno si está disponible) el parámetro llamado memory_limit.
Paso 4: Modifica el valor y aplica
Verás que tiene un valor como 128M o 256M. Haz clic en el icono de lápiz o simplemente en el valor para editarlo.
Cambia ese valor a 512M (o el que necesites). Te recomiendo empezar con 512M para tener margen de sobra. Luego, desplázate hasta el final de la página y haz clic en el botón "Aplicar" o "Guardar".
[INFO] Si tu proveedor de hosting tiene límites estrictos, es posible que no te deje poner más de
256M. Si ves que no te deja, contacta con tu proveedor para que te lo suba desde el servidor o para que te indique el valor máximo permitido.
Paso 5: Verifica el cambio
Para asegurarte de que el cambio se ha aplicado correctamente, puedes ir al panel de administración de PrestaShop y en la pestaña "Información" o "Parámetros avanzados > Información" verás el valor actualizado de memory_limit. También puedes crear un archivo temporal llamado info.php con el contenido <?php phpinfo(); ?> en tu carpeta raíz, pero recuerda borrarlo después por seguridad.
Método 2: Aumentar la memoria editando el archivo .htaccess (Alternativa)
Si por alguna razón no encuentras la opción en Plesk, o quieres hacerlo de forma más manual, puedes intentar añadir una línea al archivo .htaccess de tu PrestaShop. Sin embargo, este método es menos fiable porque PrestaShop a veces sobrescribe este archivo.
-
Ve al Administrador de archivos en Plesk.
-
Navega hasta la carpeta
httpdocs(opublic_html). -
Busca el archivo
.htaccess. Si no lo ves, activa la opción de "Mostrar archivos ocultos" en la configuración del administrador de archivos. -
Haz clic derecho sobre él y selecciona "Editar".
-
Al principio del archivo (después de la línea
SetEnvsi existe), añade esta línea:php_value memory_limit 512M -
Guarda los cambios y sube el archivo si estabas trabajando localmente.
[WARNING] Este método solo funciona si tu servidor está configurado con Apache y el módulo
mod_php. En muchos servidores con PHP-FPM (que es lo más común hoy en día), esta directiva se ignora por completo. Por eso, el Método 1 es siempre el más recomendado.
Método 3: Configurar PHP desde la línea de comandos (Para valientes)
Si tienes acceso SSH a tu servidor, puedes hacerlo aún más rápido. Conéctate por SSH y ejecuta:
plesk bin php_handler --update -id <ID_DE_TU_VERSION_PHP> -setting memory_limit=512M
Pero bueno, esto es para usuarios avanzados. Si no sabes qué es SSH, quédate con el Método 1.
¿Qué valor de memory_limit debo elegir en Plesk?
No hay una respuesta única, pero aquí tienes una guía rápida:
- 128M: Para tiendas muy pequeñas, de prueba o con pocos módulos. Irás justo.
- 256M: El estándar para la mayoría de tiendas funcionales con 2-3 módulos de envío/pago y un catálogo de hasta 5,000 productos.
- 512M: Recomendado si usas módulos pesados (como plugins de SEO avanzado, comparadores de precios, o importadores masivos) o si tu catálogo es enorme.
- 1G (1024M): Solo para tiendas muy grandes o con tráfico muy alto que ejecutan procesos pesados en el backend.
Mi consejo es que pongas 512M directamente si tu hosting lo permite. Así te olvidas del problema por un tiempo y no tienes que estar pendiente.
Errores comunes y cómo evitarlos
Durante este proceso, puedes encontrarte con algunos contratiempos. Vamos a ver los más típicos:
El error persiste después de cambiar el valor
Esto suele pasar por dos motivos:
- No has limpiado la caché: PrestaShop guarda ciertos valores en caché. Ve a Parámetros avanzados > Rendimiento y haz clic en "Vaciar la caché".
- El servidor no ha reiniciado PHP-FPM: En Plesk, normalmente se aplica al instante, pero a veces hay que esperar unos segundos o reiniciar el servicio PHP desde la propia configuración de Plesk (hay un botón que dice "Reiniciar PHP" en la parte superior de la página de configuración).
No encuentro el archivo .htaccess
Asegúrate de tener habilitada la opción de "Mostrar archivos ocultos" en el administrador de archivos de Plesk. A veces está desactivada por defecto.
El valor máximo permitido es muy bajo
Si tu plan de hosting es muy básico, el proveedor limita el memory_limit máximo a 256M o incluso 128M. En este caso, no hay nada que puedas hacer desde Plesk. Deberás contactar con el soporte de tu hosting y pedirles que lo aumenten, o considerar migrar a un plan superior.
Preguntas Frecuentes (FAQ) sobre la memoria de PHP en PrestaShop
Aquí tienes las respuestas a las dudas que más nos llegan al soporte técnico.
¿Por qué PrestaShop necesita tanta memoria?
PrestaShop es un software muy completo. Cada módulo activo (métodos de pago, envío, SEO, etc.) consume memoria. Además, el panel de administración es bastante "pesado" porque carga mucha información a la vez. Si tienes muchos productos y módulos, el consumo se dispara.
¿Aumentar el memory_limit afecta al rendimiento de mi web?
No. Aumentar el límite de memoria no hace que tu web vaya más lenta. Todo lo contrario, evita errores y permite que los scripts se ejecuten correctamente. Lo que sí puede afectar al rendimiento es tener un servidor con poca RAM física, pero eso ya es tema de tu plan de hosting.
¿Puedo usar el mismo método para otros CMS como WordPress?
Sí, el método de Plesk es universal. El parámetro memory_limit aplica a cualquier aplicación PHP, así que si también tienes un WordPress en otro dominio, puedes usar esta misma guía para arreglar el error de memoria de WordPress.
¿Qué pasa si pongo un valor demasiado alto?
No pasa nada malo, pero si pones un valor como 2G en un servidor con poca RAM, podrías saturar el servidor si tienes varios procesos ejecutándose a la vez. Lo mejor es ser razonable y poner lo que tu tienda necesita.
¿Tengo que hacer esto cada vez que actualizo PrestaShop?
No. La configuración de PHP en Plesk es independiente de la instalación de PrestaShop. Las actualizaciones de PrestaShop no modifican la configuración del servidor, así que una vez que lo configures, se quedará ahí.
Conclusión
Aumentar el límite de memoria de PHP en PrestaShop desde Plesk es un proceso rápido y sencillo si sigues estos pasos. Ya no tienes excusa para que tu tienda se caiga en el momento más inoportuno.
Recuerda que lo más importante es:
- Utiliza el Método 1 (Configuración de PHP en Plesk) siempre que puedas.
- Elige un valor de al menos 256M para empezar, o 512M si tienes una tienda con muchos módulos.
- Vacía la caché de PrestaShop después de hacer el cambio.
- Si el problema persiste, contacta con tu proveedor de hosting.
Con esta guía, tu tienda estará funcionando de manera mucho más estable. Si te ha servido, compártelo con otros comerciantes que estén peleándose con el mismo error. ¡Nos vemos en el siguiente tutorial!
