为命令行和Web服务器(PHP)设置环境变量

时间:2014-07-11 14:35:09

标签: php linux nginx environment-variables

我正在使用PHP和NGINX以及Mac / linux。我想设置环境变量,以便可以从命令行或通过网络服务器运行的脚本访问它们。

在我的nginx配置中设置$_SERVER fastcgi params并不起作用,因为它们在通过命令行运行的cron作业中不可用。

出于安全考虑,在Web应用程序中设置变量本身并不是一个好主意,所以我也不想这样做。

正确的方法是什么?

1 个答案:

答案 0 :(得分:1)

一种方法是将auto_append_file中的php.ini设置为具有setenv()行的PHP文件。然后使用getenv()。我不确定OSX是否为web和cli分配了php.ini个文件。

重读并看到你陈述Mac / Linux。对于Linux,您可以在/etc/profile中设置这些变量,或在/etc/profile.d中设置这些变量。快速搜索显示OSX的/etc/launchd.conf。不确定这些文件的范围,但可能值得一试。