Назад | Перейти на главную страницу

Suhosin - Отключить shell_exec по умолчанию, разрешить из одного каталога

У меня в php ini есть эта функция, которая по умолчанию блокирует shell_exec. php.ini

suhosin.executor.func.blacklist = shell_exec

Работает хорошо. Когда я хочу разрешить shell_exec, я использую в httpd.conf эту функцию в каталоге, который разрешает функцию. Эта функция

<Каталог "/ crons">

php_admin_value suhosin.executor.func.blacklist  “shell_exec”

</ Каталог>

Это разрешает функцию для одного каталога. Его работа хорошо. Если написать адрес в веб-браузер, все в порядке. Функция для этого каталога разрешена.

Но если в оболочке напишите:

php /crons/e.php

Итак, я получаю в консоли ошибку php shell_exec, она отключена. Потому что он работает в веб-браузере, но не работает в bash?

Спасибо за ответ

PHP в командной строке не использует Apache php_admin_value. Ты можешь использовать

php -d "suhosin.executor.func.blacklist=" e.php

Или используйте собственный файл php.ini:

php -n -c php.ini e.php

Или настройте php-cli с помощью специального файла php.ini (отметьте php --ini) - обычно что-то вроде /etc/php5/cli/php.ini.