PHP Fatal error: Allowed memory size of bytes exhausted (tried to allocate bytes) in Unknown on line 0

Revisando los log de Apache de un dominio en concreto (/var/www/vhosts/midominio.com/statistics/logs), me encontré con este error parseando el fichero error_log:

PHP Fatal error:  Allowed memory size of 171966464 bytes exhausted (tried to allocate 18965452 bytes) in Unknown on line 0

No es que sea un error importante, pero lo que nos viene a decir es que se supera la memoria asignada por php para los ejecución de scripts que se ejecutan en ese dominio. Si ese vhosts, es de preproducción, revisa la programación por si te has dejado algún bucle abierto y haga que consuma tantos recursos. 

Soluciones al respecto:

  • Opción 1: Que afecte solo al vhosts en cuestión:
    • Directamente si tienes acceso al .htaccess, agregar la siguiente línea:
php_value memory_limit 64M
    • O añadir la siguiente línea al comienzo del script:

<?php
ini_set("memory_limit","64M");
?>
    • O si en ese vhosts está instalado wordpress, edita el fichero wp-config.php de tu instalación de wordpress y añade la siguiente linea:
 define(‘WP_MEMORY_LIMIT’, ’64M’);
  • Opción 2: Que afecte a todos los vhosts de la máquina:
    • En plesk, editando  el fichero /etc/php.ini buscamos la directiva memory_limit y aumentamos su valor. Por lo que para todos los vhosts de la máquina aumentamos el límite. P.ej:
 memory_limit = 64M

Related Posts