Aumentar el límite de memoria en PrestaShop con DirectAdmin
¿Tu tienda PrestaShop se está volviendo lenta, da errores aleatorios o no carga las páginas de administración? Es muy probable que el culpable sea el límite de memoria PHP (memory_limit). Cuando PrestaShop se queda sin memoria, empiezan los problemas: imágenes que no se suben, módulos que fallan, el back office se vuelve inaccesible o aparece la temida pantalla blanca de la muerte.
No te preocupes, es un problema muy común y tiene una solución sencilla. En esta guía te voy a explicar paso a paso cómo aumentar la memoria de PrestaShop usando DirectAdmin, el panel de control de tu hosting. Lo haremos de forma segura, sin romper nada y pensando en que no necesitas ser un experto en servidores.
Vamos a usar las palabras clave que te interesan: aumentar memoria PrestaShop DirectAdmin, memory_limit PrestaShop y PrestaShop DirectAdmin PHP. Al final, también incluiremos una sección de preguntas frecuentes para resolver todas tus dudas.
¿Qué es el memory_limit y por qué es importante para PrestaShop?
El memory_limit es una configuración de PHP que define la cantidad máxima de memoria que un script (como PrestaShop) puede consumir. Piensa en ello como el límite de gasolina que le pones a tu coche: si es muy bajo, el coche se para antes de llegar a su destino.
PrestaShop es un CMS potente, pero también exigente. Necesita memoria para:
- Cargar el catálogo de productos.
- Procesar imágenes y miniaturas.
- Ejecutar módulos y temas.
- Gestionar sesiones de usuario.
- Realizar copias de seguridad o actualizaciones.
El valor recomendado para PrestaShop 1.7 y 8.x es de al menos 256 MB, aunque en tiendas grandes con muchos productos o módulos complejos, puede necesitar 512 MB o incluso más.
[WARNING] Si tu memory_limit es inferior a 128 MB, es casi seguro que tendrás problemas de rendimiento y errores. No esperes a que la tienda se caiga.
¿Cómo saber cuál es tu memory_limit actual?
Antes de cambiar nada, es importante que sepas el valor actual. Hay dos formas muy sencillas de hacerlo:
1. Desde el back office de PrestaShop (si puedes acceder)
Ve a Parámetros Avanzados > Información y busca la línea memory_limit. Te mostrará el valor actual, por ejemplo: 128M.
2. Creando un archivo de prueba PHP (si no puedes acceder)
Esta es la opción más fiable, porque te da información exacta del servidor. Crea un archivo llamado info.php con el siguiente contenido:
<?php
phpinfo();
?>
Súbelo a la raíz de tu tienda (la carpeta donde está PrestaShop, normalmente public_html). Luego, accede a tudominio.com/info.php. Busca la línea memory_limit en la tabla. No olvides borrar este archivo después de usarlo, ya que expone información sensible de tu servidor.
Métodos para aumentar el memory_limit en DirectAdmin
DirectAdmin es un panel de control muy completo y ofrece varias formas de modificar la configuración PHP. Te explico los tres métodos más efectivos, ordenados de más recomendado a menos.
Método 1: Modificar el archivo php.ini (el más fiable)
Este es el método más directo y permanente. El php.ini es el archivo maestro de configuración de PHP.
Paso 1: Accede al administrador de archivos de DirectAdmin
- Inicia sesión en DirectAdmin con tu usuario y contraseña.
- Busca el icono de Administrador de Archivos (normalmente en la sección de "Gestión de archivos").
Paso 2: Localiza el archivo php.ini
Normalmente, el php.ini se encuentra en la raíz de tu cuenta de hosting. Busca en:
public_html/php.ini- O en la carpeta raíz de tu dominio (a veces es
domains/tudominio.com/public_html/).
Si no existe, puedes crearlo. Simplemente haz clic derecho en la carpeta public_html y selecciona "Crear archivo". Nómbralo php.ini.
Paso 3: Edita el archivo
Haz clic derecho sobre php.ini y selecciona Editar. Busca la línea:
memory_limit = 128M
Si no la encuentras, agrégala al final del archivo. Cámbiala por:
memory_limit = 256M
Para PrestaShop, 256 MB es un buen punto de partida. Si tienes una tienda grande, puedes poner 512M o incluso 1024M.
Guarda los cambios.
[TIP] Si tu hosting usa PHP-FPM (lo más común hoy en día), también puedes necesitar modificar el archivo
php-fpm.confopool.d/del dominio, pero elphp.inisuele ser suficiente.
Método 2: Usar el archivo .htaccess (solución rápida)
Si no puedes acceder al php.ini o tu hosting no lo soporta, puedes usar el .htaccess. Este archivo se encuentra en la raíz de tu tienda (public_html/.htaccess).
Paso 1: Abre el .htaccess
Desde el Administrador de Archivos, busca .htaccess en public_html. Si no existe, créalo (asegúrate de que el nombre empiece con punto).
Paso 2: Añade la línea
Al principio del archivo (después de las líneas de RewriteEngine si las hay), agrega:
php_value memory_limit 256M
Guarda los cambios.
[WARNING] Este método puede no funcionar si tu servidor tiene configuraciones de seguridad que bloquean
php_valueen.htaccess. Si no ves cambios, prueba con el método delphp.ini.
Método 3: Desde la opción "Versión de PHP" en DirectAdmin (si tu hosting lo permite)
Algunos hostings con DirectAdmin tienen una opción gráfica para cambiar la configuración PHP.
- En DirectAdmin, busca Versión de PHP o PHP Selector.
- Selecciona la versión de PHP que usas (por ejemplo, 8.1 o 8.2).
- Busca la opción memory_limit y cámbiala a
256Mo el valor que desees. - Guarda los cambios.
Este método es el más fácil, pero no está disponible en todos los planes de hosting.
Verificar que el cambio se ha aplicado
Después de hacer el cambio, es importante comprobar que se ha aplicado correctamente.
- Vuelve a acceder a
tudominio.com/info.php(si lo creaste) o revisa la información de PrestaShop. - Busca memory_limit y confirma que ahora muestra el nuevo valor (por ejemplo,
256M). - Borra el archivo
info.phpsi lo usaste.
Si el valor no ha cambiado, es posible que:
- El archivo
php.inino esté en la ubicación correcta. - El servidor use un
php.inidiferente (pregunta a tu hosting). - Necesites reiniciar el servicio PHP (en DirectAdmin, busca "Reiniciar PHP" o contacta al soporte).
¿Qué hacer si aún tienes problemas?
Aumentar el memory_limit suele resolver la mayoría de los problemas, pero a veces no es suficiente. Si después del cambio sigues teniendo errores, considera:
- Aumentar otros límites PHP:
max_execution_time,upload_max_filesize,post_max_size. - Optimizar PrestaShop: Desactiva módulos innecesarios, limpia la caché, usa un tema ligero.
- Actualizar a la última versión: Las versiones nuevas suelen ser más eficientes.
- Contactar al soporte de tu hosting: Ellos pueden revisar la configuración del servidor y ayudarte.
[INFO] Si tu hosting usa Syspanel (antes conocido como HestiaCP), el puerto de acceso es el 2106. La configuración es similar, pero busca en la sección de "PHP" o "Configuración avanzada".
FAQ: Preguntas frecuentes sobre aumentar memoria en PrestaShop con DirectAdmin
¿Cuánta memoria necesita PrestaShop?
Para PrestaShop 1.7 y 8.x, se recomienda 256 MB como mínimo. Para tiendas grandes (más de 10,000 productos o muchos módulos), 512 MB o más.
¿Puedo poner un valor demasiado alto?
No hay un límite estricto, pero si pones un valor excesivo (por ejemplo, 2048 MB) y tu servidor no tiene suficiente RAM, podrías ralentizar otros sitios en el mismo hosting. Lo mejor es empezar con 256 MB y subir si es necesario.
¿Qué hago si no encuentro el archivo php.ini?
Si no existe, créalo. Si ya existe pero no ves la línea memory_limit, agrégala al final. Si tu hosting usa PHP-FPM, el archivo puede estar en otra ruta; consulta con el soporte.
¿El cambio afecta a otros sitios en mi cuenta?
No, si modificas el php.ini de tu dominio, solo afecta a ese dominio. Si usas el método global de DirectAdmin, podría afectar a todos los sitios de tu cuenta.
¿Y si uso Syspanel (HestiaCP)?
En Syspanel, el proceso es similar: busca "PHP" en el panel, selecciona tu dominio y cambia memory_limit. Recuerda que el puerto de acceso es el 2106.
Conclusión
Aumentar el límite de memoria en PrestaShop usando DirectAdmin es un proceso sencillo que puede resolver muchos problemas de rendimiento y errores. Ya sea modificando el php.ini, el .htaccess o usando el selector de PHP, cualquiera de estos métodos te permitirá darle a tu tienda el oxígeno que necesita para funcionar correctamente.
Recuerda siempre verificar el cambio y, si tienes dudas, no dudes en contactar con el soporte de tu hosting. Una tienda rápida y estable es la clave para una buena experiencia de usuario y un mejor posicionamiento SEO.
¡Ahora tu PrestaShop está listo para crecer sin límites de memoria!
