
Я запускаю установку с PHP 5.3.8 и использую php-fpm с его функциональностью chroot для разделения нескольких клиентов. Таким образом, у каждого клиента есть своя собственная chrooted PHP-среда, что вполне нормально.
Теперь я хочу запретить клиенту изменять memory_limit
его PHP-экземпляр с помощью ini_set
. С другой стороны, я не хочу отключать ini_set
полностью. Поэтому я ищу возможность отключить возможность устанавливать определенные параметры конфигурации PHP (например memory_limit
) через ini_set
.
Кто-нибудь знает, как этого добиться?
решение1
Это невозможно без исправления исходного кода PHP.
решение2
Как заметил cyberx86 в своем комментарии, по крайней мере, с помощью suhosin можно запретить изменения memory_limit
во время выполнения. Параметр конфигурации для этого в suhoshin называется suhosin.memory_limit
.
решение3
Для Apache вы можете установить в httpd.conf что-то вроде следующего:
php_admin_value memory_limit 2G
и это сделает бессмысленной любую строку в скрипте, например:
ini_set('memory_limit', '4096M');
Вы можете прочитать большездесь.
НТН