我有 php 脚本,它使用 /etc/environment 中的 getenv 使用一些环境变量。当我使用 php 命令从终端运行它时,它工作正常。但是在终端上从 nohup 运行相同的脚本时,环境变量没有得到。
PHP 是 5.3,使用 Debian 6。
我没有问题:
nohup php -r 'var_export(getenv("PATH"));'
结果相同
php -r 'var_export(getenv("PATH"));'
也许您正在与用户 env var 交谈?
MY_VAR=42;
nohup php -r 'var_export(getenv("MY_VAR"));'
# The output will return false.
# You need to use export
export MY_VAR=42;
nohup php -r 'var_export(getenv("MY_VAR"));'