我有一个Ubuntu服务器,在/etc/environment中设置了一些自定义环境变量,根据Ubuntu社区的建议。
当我使用命令行中的php时,可以使用php的getenv()
函数访问这些变量。
另外,如果我从命令行运行phpinfo()
,我会在“ENVIRONMENT”部分看到所有的变量。
然而,在尝试访问被php5-fpm运行的进程内相同的数据时,此数据不可用。在phpinfo()
的“ENVIRONMENT”部分中,我只能看到:
USER www-data
HOME /var/www
我知道命令行使用了这个ini文件:
/etc/php5/cli/php.ini
而 FPM 使用:
/etc/php5/fpm/php.ini
我尚未找到任何能够解释为什么两者都无法传递ENV变量的区别。
另外,如果运行:
sudo su www-data
然后回显我期望的环境变量,确保它们对于www-data用户是可用的。
我需要做什么才能将我的环境变量传递给fpm运行的php进程?