Привет всем. Прилагаю усилия чтобы разобраться как и на каком .user.ini парсится php-fpm.
Ф-ция, ответственная за это дело -
https://github.com/php/php-src/blob/php-7.0.7/sapi/fpm/fpm/fpm_main.c#L670Ввиду основных особенностей архитектуры php-fpm -
http://www.php.net/manual/en/install.fpm.configuration.php:
pm.max_requests int
^^ The number of requests each child process should execute before respawning. This can be useful to work around memory leaks in 3rd party libraries.
Как мне кажется, значения из /docroot/path1/.user.ini для /docroot/path1/foo.php могут утекать в /docroot/path2/bar.php
когда /docroot/path1/foo.php
и затем /docroot/path2/bar.php
обрабатываются последовательно одним и тем же fpm worker по воле случая.
Т.к. .user.ini ключики подмешиваются через php_ini_activate_config() в нетрансакционной/неизвлекаемой манере.
Помогите разобраться в архитектуре fpm, переубедите меня, в чём я не прав? Спасибо заранее.