Suhosin.memory_limit não permite que o PHP use mais memória

1

Eu tenho um servidor onde o PHP memory_limit é 256M. Alguns scripts precisam de mais memória e fazem um ini_set ('memory_limit', '256M'); mas desde que Suhosin é instalado e ativado, eu acho isso no arquivo de log

Sep 17 14:06:42 www-01 suhosin[28934]: ALERT - script tried to increase memory_limit to 536870912 bytes which is above the allowed value (attacker '127.0.0.1', file '/xxx/generate_docs.php', line 45) 

Mas o suhosin está configurado com

suhosin.memory_limit = 2048M

Os valores de memory_limit e suhosin.memory_limit do PHP são confirmados por phpinfo (). Por que o PHP não pode pedir mais memória com essa configuração?

Este script é executado corretamente para qualquer valor de limite de memória abaixo de 256M, mas para um valor maior eu recebo o erro e memory_limit não muda.

<?php
echo ini_get('memory_limit') . "<br>";
ini_set('memory_limit', '512M');
echo ini_get('memory_limit') . "<br>";
echo ini_get('suhosin.memory_limit') . "<br>";
echo "end<br>";

a saída é

256M
256M
2048M
end
    
por Cédric Girard 18.09.2013 / 11:43

1 resposta

1

Aleluia. Fazer uma pergunta me ajuda a encontrar o problema.

Configurando suhosin.memory_limit para 1024 (2048 foi para testar com um valor de borda), ele é executado e meu script me diz

256M
512M
1024M
end

O mesmo problema que link (mesmo servidor, a propósito)

    
por 18.09.2013 / 11:55

Tags