Generalidades
A continuación se explica cómo aumentar el límite de memoria PHP de un sitio web.
Antecedentes
Cada instalación de PHP está configurada con un límite de memoria predeterminado. Esto funciona bien para la mayoría de los sitios web, sin embargo, si tu sitio web requiere más memoria, puedes recibir el siguiente error que indica que se has alcanzado el límite de memoria:
Fatal error: Allowed memory size of 94371840 bytes exhausted (tried to allocate 5072 bytes)
Luego puedes aumentarlo editando el php.ini (phprc) de tu usuario.
Diferentes tipos de memoria
Existen distintos tipos de memoria que debes conocer antes de actualizar el límite de memoria de PHP. Por ejemplo:
- Memoria del Servidor (RAM) — Esta es la cantidad de memoria que utiliza el servidor físico. En un servidor compartido, este valor se comparte entre todos los clientes. En un servidor VPS o Dedicado, este valor está aislado para esa máquina específica.
- Memoria PHP del usuario — La cantidad de memoria PHP que un usuario tiene para todos sus sitios web. Si un usuario tiene tres sitios web, todos combinados utilizarían este valor.
- Memoria PHP de WordPress — La cantidad de memoria disponible para que utilice WordPress. Esto está relacionado con la memoria de PHP, pero se configura dentro del archivo wp-config.php del sitio web.
Asegúrate de ajustar los valores correctos para garantizar que se resuelva el problema.
Antes de hacer cambios
Asegúrate de revisar lo siguiente antes de realizar cualquier cambio en la configuración de PHP:
- La configuración memory_limit limita directamente la cantidad de RAM que puede utilizar un único proceso PHP.
- En planes de alojamiento Shared o VPS de menores recursos, establecer un valor más alto, como 512 M, puede agotar rápidamente la memoria disponible si se ejecutan varios procesos PHP a la vez.
- Incrementar este valor afecta a todos los sitios bajo el mismo Usuario SFTP/SSH.
- Si el valor excede los recursos disponibles de tu plan, puedes volver al valor predeterminado (128M para los compartidos y 256M para VPS/Dedicados/DreamPress).
- Si tu sitio requiere constantemente límites más altos, considera mejorar tu plan de alojamiento.
Cómo incrementar el límite de memoria PHP
Las siguientes secciones explican cómo administrar el límite de memoria PHP de tu sitio.
Increasing the PHP memory limit from the panel
Para aumentar el límite de memoria PHP directamente desde tu panel:
- Navega a la página Administrar Sitios Web.
- Da clic en el botón Administrar para abrir las Configuraciones del Sitio Web, las cuales te permiten modificar varios ajustes de tu sitio.
- Si estás en la Vista de Malla, da clic en el botón Administrar en la parte inferior de la caja del sitio.
- Si estás en la Vista de Lista, da clic en el botón Administrar a la derecha de tu dominio.
- Da clic en la pestaña Configuraciones.
-
En la sección Configuración del Sitio Web, da clic en Administrar junto a PHP.
Se abre la página Configuraciones de PHP. - Desplázate a la sección Configuraciones de PHP.
- En la fila General, Da clic en el botón Modificar.
- Ubica la configuración memory_limit y selecciona el valor deseado en el menú desplegable.
-
Da clic en Guardar Cambios cuando termines.
No es necesario reiniciar manualmente ni finalizar el proceso cuando se utiliza el panel.
Incrementar el límite de memoria desde un archivo phprc
Para aumentar los límites de PHP en los sitios DreamPress, usa el archivo .user.ini en su lugar.
Debes crear o editar el archivo phprc de tu usuario para aumentar este límite. Revisa los siguientes artículos para obtener instrucciones sobre cómo crear un archivo phprc:
Si el archivo ya existe, revisa los siguientes artículos para obtener instrucciones sobre cómo actualizarlo:
Agrega la siguiente línea para aumentarlo a 300 MB:
memory_limit = 300M
Si te das cuenta de que está aumentando la memoria en gran medida, es hora de considerar abandonar el Alojamiento Shared, ya que tu sitio web tiene mayores necesidades de las que el Shared Hosting puede proporcionar de manera confiable.
Incrementar el límite de memoria PHP de WordPress
Si estás ejecutando un sitio de WordPress, la configuración en el archivo phprc puede no tener efecto ya que WordPress lo anula en su archivo wp-config.php. Para solucionar esto, solo actualiza el archivo wp-config.php con el límite de memoria específico. Por ejemplo:
- Conéctate a tu sitio WordPress ya sea por FTP o SSH.
- Asegúrate de estar en el directorio de tu sitio. Verás el archivo wp-config.php aquí.
- Edita el archivo (usando FTP o SSH) para agregar las siguientes líneas. Asegúrate de agregarlos antes de la inclusión 'wp-settings.php'. Por ejemplo:
define( 'WP_MEMORY_LIMIT', '300M' );
define( 'WP_MAX_MEMORY_LIMIT', '300M' );
/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');
Revisa este artículo para obtener más información.
Eliminar todos los procesos de php en ejecución
Asegúrate de eliminar los procesos php en ejecución para asegurarte de que la nueva configuración surta efecto.
Confirmar los cambios
Después de editar el archivo y eliminar todos los procesos PHP, debes verificar que los valores se hayan actualizado. Puedes hacerlo creando un archivo phpinfo.php. Si no ves que los cambios se hayan actualizado, intenta eliminar los procesos PHP de nuevo.