Aumentar el límite de memoria PHP en cPanel (php.ini)
¿Por qué aparece el error de memoria PHP?
Si estás gestionando un sitio web en cPanel, es muy probable que en algún momento te hayas encontrado con un mensaje como "Fatal error: Allowed memory size of 134217728 bytes exhausted" (o similar). Este error es uno de los más comunes en plataformas como WordPress o PrestaShop, y suele aparecer cuando el script que intenta ejecutarse necesita más memoria de la que el servidor tiene configurada por defecto.
La buena noticia es que aumentar el límite de memoria PHP es un proceso relativamente sencillo en cPanel, y no requiere que seas un experto en sistemas. En esta guía te explicaré paso a paso cómo hacerlo, qué archivos debes editar y qué precauciones debes tener en cuenta para no romper nada en el proceso.
¿Qué es el límite de memoria PHP y por qué es importante?
La memoria PHP es la cantidad de memoria RAM que un script PHP puede utilizar antes de que el sistema lo detenga. Este límite existe para proteger el servidor de que un script mal optimizado consuma todos los recursos y afecte a otros sitios web alojados en el mismo servidor.
Cuando instalas un CMS como WordPress o PrestaShop, estos vienen con una configuración por defecto que suele estar alrededor de los 64 MB o 128 MB. Sin embargo, a medida que tu sitio crece, instalas plugins, temas o módulos, es muy común que necesites más memoria para que todo funcione correctamente.
El error típico que verás en tu pantalla será algo como:
"Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in /home/usuario/public_html/wp-includes/..."
Este mensaje te está diciendo que el script intentó usar más memoria de la permitida (134217728 bytes = 128 MB) y el sistema lo detuvo. Aumentar el límite es la solución más directa, aunque siempre es recomendable también revisar si hay algún plugin o módulo que esté consumiendo demasiados recursos.
Antes de empezar: ¿qué necesitas?
Para realizar este proceso, necesitarás:
- Acceso a cPanel: con credenciales de administrador o de usuario con permisos suficientes.
- Acceso al Administrador de archivos de cPanel o un cliente FTP (como FileZilla).
- Un editor de texto plano (no uses Word ni procesadores similares, porque añaden caracteres invisibles que pueden romper el código).
- Paciencia y cuidado: siempre es recomendable hacer una copia de seguridad de los archivos que vayas a modificar.
Método 1: Editar el archivo php.ini desde el Administrador de archivos
Este es el método más directo y el que recomiendo para la mayoría de usuarios. El archivo php.ini es el archivo de configuración principal de PHP, y en cPanel puedes editarlo fácilmente.
Paso 1: Localiza el archivo php.ini
- Inicia sesión en tu cPanel.
- Busca la sección Archivos y haz clic en Administrador de archivos.
- En la parte superior derecha, asegúrate de que estás en la carpeta public_html (o la carpeta raíz de tu sitio web).
- Busca el archivo
php.ini. Si no lo ves, puede que esté oculto. Haz clic en Configuración (arriba a la derecha) y marca la casilla Mostrar archivos ocultos (dotfiles). - Si el archivo no existe, no te preocupes: puedes crearlo. Haz clic en + Archivo y nómbralo exactamente
php.ini.
Paso 2: Editar el archivo php.ini
- Una vez que tengas el archivo visible, haz clic derecho sobre él y selecciona Editar.
- En el editor, añade o modifica la siguiente línea:
memory_limit = 256M
[TIP] Puedes usar valores como
128M,256M,512Mo incluso1024Msi tu servidor tiene suficiente RAM. Sin embargo, no te recomiendo poner valores excesivamente altos sin necesidad, ya que podrías afectar el rendimiento del servidor.
- Guarda los cambios haciendo clic en Guardar cambios y luego en Cerrar.
Paso 3: Verifica que el cambio se ha aplicado
Para comprobar que el nuevo límite se ha aplicado correctamente, puedes crear un archivo de prueba llamado info.php en tu carpeta public_html con el siguiente contenido:
<?php phpinfo(); ?>
Guarda el archivo y accede a él desde tu navegador (por ejemplo, tudominio.com/info.php). Busca la sección memory_limit y verás el nuevo valor.
[WARNING] Después de la verificación, borra el archivo
info.phpinmediatamente. Dejarlo en el servidor es un riesgo de seguridad grave, ya que expone información sensible de tu configuración.
Método 2: Usar el selector de versión de PHP de cPanel
En muchas instalaciones de cPanel, existe una herramienta llamada MultiPHP Manager o Selector de versión de PHP que te permite ajustar los parámetros de PHP de forma gráfica, sin necesidad de tocar archivos.
Paso 1: Accede al selector de PHP
- En tu cPanel, busca la sección Software y haz clic en MultiPHP Manager o Selector de versión de PHP (el nombre puede variar según la versión de cPanel).
- Si tienes varios dominios, selecciona el dominio que quieres configurar.
- Haz clic en Configuración o Configuración avanzada.
Paso 2: Modifica el límite de memoria
- Busca la opción memory_limit en la lista de parámetros.
- Cambia el valor al que necesites (por ejemplo,
256M). - Haz clic en Aplicar o Guardar.
Este método es más seguro porque evita errores de sintaxis en el archivo php.ini, y es el que recomiendo si no te sientes cómodo editando archivos de configuración.
Método 3: Aumentar el límite solo para un sitio específico (WordPress)
Si solo necesitas aumentar la memoria en WordPress y no quieres tocar la configuración global de PHP, puedes hacerlo directamente desde el archivo wp-config.php.
Paso 1: Editar wp-config.php
- Ve al Administrador de archivos de cPanel.
- Navega a la carpeta
public_html(o la carpeta donde esté instalado WordPress). - Busca el archivo
wp-config.phpy haz clic derecho sobre él → Editar. - Añade la siguiente línea justo antes de la línea que dice
/* That's all, stop editing! Happy publishing. */:
define('WP_MEMORY_LIMIT', '256M');
- Guarda los cambios.
Paso 2: Reinicia WordPress (opcional)
No es necesario reiniciar nada; los cambios se aplican al instante. Sin embargo, si tienes un plugin de caché, es recomendable purgarla para que los cambios se reflejen correctamente.
[INFO] Este método solo afecta a WordPress. Si tienes PrestaShop, el proceso es similar pero con el archivo
config/settings.inc.php(aunque los métodos anteriores son más recomendables y universales).
¿Qué hago si ninguno de estos métodos funciona?
Si después de seguir estos pasos el error persiste, puede que el valor esté siendo sobrescrito por algún otro archivo de configuración o por un plugin. Te recomiendo lo siguiente:
-
Revisa los archivos .htaccess: A veces, se añaden directivas de PHP en el
.htaccess. Busca líneas comophp_value memory_limit 128My cámbialas o elimínalas. -
Desactiva plugins y módulos: En WordPress, desactiva todos los plugins y reactívalos uno a uno para identificar cuál está consumiendo demasiada memoria.
-
Consulta con tu proveedor de hosting: A veces, el límite está impuesto a nivel de servidor y no puedes cambiarlo desde cPanel. En ese caso, contacta con el soporte técnico.
-
Revisa los logs de errores: En cPanel, puedes acceder a Métricas → Errores para ver los registros detallados y saber qué script está fallando.
Preguntas frecuentes (FAQ)
¿Cuál es el valor recomendado de memoria PHP?
Para la mayoría de sitios con WordPress o PrestaShop, 256 MB es un valor equilibrado que resuelve el 95% de los errores. Si tu sitio es muy grande o tiene muchas funciones, puedes probar con 512 MB, pero no es recomendable superar esa cifra sin necesidad.
¿Aumentar la memoria PHP afecta al rendimiento del servidor?
Sí, indirectamente. Si todos los sitios del servidor usan mucha memoria, el servidor puede quedarse sin RAM y ralentizarse. Por eso es importante no abusar y solo aumentar el límite cuando realmente lo necesites.
¿Puedo aumentar el límite de memoria desde el archivo .htaccess?
Sí, pero es un método menos fiable y depende de que el servidor permita directivas php_value. En muchos servidores modernos, estas directivas están deshabilitadas por seguridad. Prefiero los métodos anteriores.
¿Qué pasa si pongo un valor demasiado alto?
Si pones un valor demasiado alto (por ejemplo, 2048M) y el servidor no tiene suficiente RAM, podrías provocar que el servidor se quede sin memoria y que el sitio se caiga. Además, los procesos de PHP podrían consumir demasiados recursos y afectar a otros sitios.
¿Este proceso también funciona en otros paneles de control?
Sí, el concepto es similar. Si en lugar de cPanel usas Syspanel (antes conocido como HestiaCP), el proceso es prácticamente el mismo: accedes al administrador de archivos, buscas el php.ini y modificas el valor. La diferencia principal es que el puerto de acceso a Syspanel es el 2106 en lugar del 2083 de cPanel.
Conclusión
Aumentar el límite de memoria PHP en cPanel es un proceso accesible para cualquier usuario, incluso sin experiencia técnica avanzada. Con los métodos que te he mostrado (editar php.ini, usar el selector de PHP o modificar wp-config.php), podrás resolver el molesto error de memoria en WordPress o PrestaShop en cuestión de minutos.
Recuerda siempre:
- Hacer copias de seguridad antes de modificar archivos.
- No abusar de los valores de memoria.
- Borrar los archivos de prueba como
info.phpdespués de usarlos. - Si no te sientes seguro, contactar con tu proveedor de hosting.
Espero que esta guía te haya sido de ayuda. Si tienes alguna duda o problema, no dudes en dejar un comentario y estaré encantado de ayudarte. ¡Buena suerte con tu sitio web!
