Corregir el error "Tamaño de memoria permitido de bytes agotados" en WordPress
Este tutorial abarca los siguientes temas:
El “Allowed Memory Size of Bytes Exhausted” de WordPress es uno de los errores de PHP más extendidos que puedes encontrar. Por supuesto, este mensaje de error parece perturbador y puede ser frustrante de tratar. Con él, tu sitio web WordPress indica que hay un script que usa demasiada memoria PHP asignada. Como resultado, tu sitio puede mostrar una página en blanco y volverse inaccesible, alejando a tus visitantes.
En este artículo, veremos qué causa el error “Memory size exhausted” y cómo aumentar el límite de memoria de PHP para solucionarlo, así que sigue leyendo.
¿Qué causa el “Fatal Error: Allowed Memory Size of Bytes Exhausted” en WordPress?
El código de WordPress está escrito en PHP, un lenguaje de programación del lado del servidor utilizado para crear páginas web dinámicas. Este lenguaje de código abierto usa recursos del servidor para ejecutar scripts y solicitudes para múltiples aplicaciones simultáneamente. Uno de estos recursos es la memoria PHP que los servidores usan para realizar tareas con éxito. Para que los servidores funcionen correctamente, los administradores del sistema asignan una cierta cantidad de memoria PHP para ser utilizada por un sitio web.
La mayoría de los servidores web establecen un límite de memoria predeterminado para WordPress que puede ser un valor más bajo que el límite de memoria PHP asignado en el servidor. Eso deja “espacio” para aumentar el límite de memoria de WordPress.
Si un plugin o tema requiere más memoria que la predeterminada, es posible que te encuentres con un “PHP Fatal error: Allowed Memory Size of Bytes Exhausted.”
“Allowed Memory Size of Bytes Exhausted tried to allocate bytes” también puede ser causado por un script defectuoso en tu WordPress.
Además, las versiones anteriores de PHP (por debajo de PHP 5.3) usan más memoria, son más lentas y vulnerables a ataques. Una versión antigua de PHP puede estar causando el error “PHP allowed memory size of bytes exhausted”. Por lo tanto, recomendamos usar la última versión estable de PHP para tu WordPress.
Ten en cuenta que tu sitio web puede mostrar una pantalla blanca. En esta situación, debes habilitar el modo de depuración para ver el error real. Si, después de habilitarlo, tu sitio muestra un “Fatal error allowed memory size of bytes … exhausted tried to allocate … bytes,” – sigue leyendo.
En la siguiente sección, explicaremos cómo arreglar o solucionar el error “allowed memory size of bytes exhausted” de WordPress.
¿Cómo arreglar este error de límite de memoria de WordPress?
Si te encuentras con el error de PHP “Allowed memory size of bytes exhausted”, es probable que tu sitio haya consumido toda la memoria asignada. En este punto, probablemente no estés seguro de qué podría estar causando el problema. Por lo tanto, primero debes intentar aumentar el límite de memoria de WordPress. Hay varias formas de hacer esto, dependiendo del entorno de alojamiento de tu sitio.
Incrementar el límite de memoria de PHP
El límite de memoria PHP es la cantidad de memoria predeterminada que el servidor asigna al procesamiento de un sitio web. Diferentes proveedores de hosting web pueden tener diferentes configuraciones de servidor, aunque, por defecto, la memoria de WordPress viene preestablecida en 64M.
El valor predeterminado de WordPress memory limit está establecido en 256 MB. Sin embargo, en todos los servidores de SiteGround, el memory_limit PHP del servidor está configurado en 768 MB para todos los planes compartidos y se puede aumentar aún más para los servidores Cloud.
Puedes comprobar esto desde el Gestor de PHP en tu Site Tools después de escribir “memory_limit” en el filtro en la sección de Variables de PHP.
Edita el wp-config.php
Para aumentar el límite de memoria de WordPress, necesitas editar el archivo wp-config.php de tu aplicación. Puedes hacerlo desde el Administrador de archivos de tu hosting, a través de un cliente FTP tras crear una cuenta FTP, o usando una conexión SSH.
Como regla general, siempre debes hacer una copia de seguridad de los archivos del sitio antes de editarlos, en caso de que algo salga mal.
Si quieres editar el wp-config.php desde tu Administrador de Archivos, navega a la sección Sitio Web de tus Site Tools. Por lo general, puedes encontrar el archivo en la carpeta public_html, el directorio raíz predeterminado para tu instalación de WordPress. Si has cambiado el directorio de tu WordPress, el archivo de configuración debería estar en esa carpeta.
Haz clic derecho en el archivo wp-config.php para editarlo, pega el siguiente fragmento de código dentro y guarda los cambios. Asegúrate de pegarlo justo encima de la línea /*That’s all, stop editing! Happy publishing*/.
define( 'WP_MEMORY_LIMIT', '512M' );
Si ves la línea “define (‘WP_MEMORY_LIMIT’, ‘256M’);”, simplemente edita el valor a 512M.
Ten en cuenta que 512M (MB) es el límite de memoria óptimo recomendado para planes compartidos. Puedes personalizar aún más el límite si tienes un plan Cloud.
Después de guardar los cambios, limpia la caché de tu navegador y actualiza tu sitio web. El error “Tamaño de memoria permitido de bytes agotados” debería desaparecer.
Comprueba tu archivo php.ini
El archivo php.ini es revisado por el servidor antes de ejecutar los scripts PHP, ya que proporciona información sobre los límites de recursos. Este no es un archivo principal de WordPress. Sin embargo, es posible que lo tengas en tu carpeta raíz si previamente has configurado otras variables de PHP. Por lo tanto, debes asegurarte de que el valor de memoria de PHP no sea inferior al valor de memoria definido en tu wp-config.php. Si ese es el caso, tu WordPress no podrá usar el límite de memoria de 512 MB que estableciste anteriormente.
Puedes encontrar el archivo php.ini en la carpeta public_html de tu sitio web y hacer clic derecho en el archivo para editarlo. Busca la línea que define la variable memory_limit y establece el valor en consecuencia.
memory_limit = 512M
Luego, guarda los cambios y vuelve a cargar tu sitio para ver si el error de PHP “Tamaño de memoria permitido de bytes agotados” se ha resuelto.
Desactivar todos los plugins
Si has incrementado el límite de memoria, pero tu sitio todavía muestra el error de PHP de “tamaño de memoria permitido de bytes agotados”, intenta desactivar los plugins. Lo más probable es que un plugin en tu sitio haya excedido el límite de memoria, causando una pérdida de memoria. Debido a ese plugin defectuoso, el navegador muestra el error “Tamaño de memoria permitido agotado”, que impide el acceso a tu sitio web.
Por lo tanto, al deshabilitar los plugins de WordPress, deberías poder acceder a tu sitio y comenzar a habilitarlos uno por uno para encontrar al culpable.
Los clientes de SiteGround pueden desactivar fácilmente los plugins de WordPress desde su Site Tools > WordPress > Instalar y administrar.
Al hacer clic en el botón Desactivar todos los plugins en el menú Acciones y confirmar, todos tus plugins de WordPress se desactivarán.
Alternativamente, puedes desactivar todos los plugins de WordPress directamente desde la base de datos siguiendo los pasos en este artículo.
Después de esto, inicia sesión en tu panel de WordPress y comienza a activar tus plugins uno por uno. Finalmente, activarás el plugin defectuoso y aparecerá el mensaje “Allowed memory size of bytes exhausted”. Cuando eso suceda, habrás identificado el plugin que está causando el error y deberías desactivarlo de nuevo para restaurar el acceso a tu sitio web.
Para concluir, si estás luchando con el error fatal de WordPress “Allowed memory size of bytes exhausted tried to allocate bytes,”, en primer lugar, intenta aumentar el límite de memoria. Si eso no funciona, deshabilita tus plugins para obtener acceso a tu sitio y comienza a depurar el asunto para encontrar al culpable. En caso de que el error persista, no dudes en contactar con nuestro equipo de soporte en cualquier momento.