2013-08-09 2 views
2

У меня есть Debian Squeeze со стандартным Apache и PHP, установленным с помощью aptitude.PHP увеличить memory_limit выше 128M

Нет, я пытаюсь запустить:

<?php 
echo ini_get("memory_limit")."\n"; 
ini_set("memory_limit","1024M"); 
echo ini_get("memory_limit")."\n"; 
?> 

Результат: 128M 128M

То, что я пытался изменить это поведение и некоторые факты:

/etc/php5/apache2/php.ini: 
safe_mode = Off 
memory_limit = 128M 

/etc/php5/apache2/conf.d/suhosin.ini: 
[suhosin] 
suhosin.memory_limit = 2048M 

я могу проверить эти настройки с phpinfo(); после service apache2 restart.

Почему я не могу установить лимит памяти выше 128M?

Примечание:

<?php 
echo ini_get("memory_limit")."\n"; 
ini_set("memory_limit","127M"); 
echo ini_get("memory_limit")."\n"; 
?> 

Результат: 128M 127m

С наилучшими пожеланиями

+0

Какая версия PHP? –

+0

php -v PHP 5.3.3-7 + squeeze16 с Suhosin-Patch (cli) (построено: 17 июля 2013 17:04:11) – user2554863

ответ

2

Изменение memory_limit блокируется расширением Suhosin.

Из документов по адресу: http://www.hardened-php.net/suhosin/configuration.html#suhosin.memory_limit

suhosin.memory_limit

Type: Integer Default: 0 As long scripts are not running within safe_mode they are free to change the memory_limit to whatever value they want. Suhosin changes this fact and disallows setting the memory_limit to a value greater than the one the script started with, when this option is left at 0. A value greater than 0 means that Suhosin will disallows scripts setting the memory_limit to a value above this configured hard limit. This is for example usefull if you want to run the script normaly with a limit of 16M but image processing scripts may raise it to 20M.

Так что с поддержкой расширения Suhosin, вам необходимо изменить его и перезапустить Apache.

+0

смотрите на моем первом посте :-) – user2554863

+0

@ user2554863, хм только патч ! Вы пытались отключить его и проверить ограничение памяти или это будет боль? – vee

+0

Привет, я согласился: 'extension = suhosin.so' в /etc/php5/apache2/conf.d/suhosin.ini. После перезапуска Apache он работает. Версия Сухозина: Suhosin Patch 0.9.9.1. У вас есть помощь? Я не хочу его оставлять. – user2554863

Смежные вопросы