Configurei um pool FPM separado para um aplicativo e, entre outras configurações, defino o seguinte:
env[PATH] = "/opt/bin:/usr/bin:/bin"
Uma chamada para phpinfo()
informa a string acima como PATH
na seção "Environment" - até agora tudo bem.
No entanto, o valor para $_SERVER['PATH']
- relatado na seção "Variáveis PHP" - é /sbin:/bin:/usr/sbin:/usr/bin
. Eu acho, esse é o caminho que o Apache é iniciado. O problema é que, quando o aplicativo PHP chama getenv('PATH')
, obtém a última cadeia, que é incorreta.
Agora, o PATH do Apache deve, provavelmente, permanecer o que é - o servidor da web está liderando aplicativos diferentes e prefiro não modificar sua configuração mais do que é absolutamente necessário. As configurações do pool do FPM devem sobrescrever as do servidor web - existe uma maneira de reforçar isso? Obrigado!
(Meu PHP atualmente é 7.0.14.)
Tags php-fpm