nginx + PHP-FPM отключают функции PHP только для определенных виртуальных хостов

Как я могу отключить некоторые функции php только для части (в настоящее время только 1) virtualhosts на моем стеке Nginx+PHP-FPM?

0
задан 10 April 2015 в 21:21
3 ответа

Это подробно описано на странице руководства по настройке пулов процессов - используйте среду cars для добавления к ini-настройке disable_functions.

-1
ответ дан 5 December 2019 в 12:52

Вы можете сделать отдельный пул для вашего хоста и поместить туда ограниченные функции, как это (в последней строке):

[example.com]
listen = 127.0.0.1:9001
listen.allowed_clients = 127.0.0.1
user = web1
group = client0
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
chdir = /
php_admin_value[open_basedir] = /var/www/www.example.com:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin
php_admin_value[disable_functions] = dl,exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source
1
ответ дан 5 December 2019 в 12:52

На самом деле кажется, что это невозможно.

disable_functions можно установить только в php.ini ( PHP_INI_SYSTEM ).

Хотя PHP пул из FPM выглядит как отдельные процессы - см. https://supportex.net/blog/2012/02/lemp-dispting-php-functions/

0
ответ дан 5 December 2019 в 12:52

Теги

Похожие вопросы