Php 在哪里为运行在Vagrant上的Ubuntu设置环境变量?
我正在Heroku上运行一个PHP应用程序,使用Php 在哪里为运行在Vagrant上的Ubuntu设置环境变量?,php,heroku,vagrant,environment-variables,vagrantfile,Php,Heroku,Vagrant,Environment Variables,Vagrantfile,我正在Heroku上运行一个PHP应用程序,使用Heroku:config命令检索环境变量没有问题,但我需要在本地有单独的变量 我在Ubuntu上游手好闲,但我一生都不知道在哪里设置变量。我尝试过使用~/.bashrc,并将变量放入配置脚本中,但我无法在PHP中使用$\u ENV(或getenv())函数来实际检索变量。当我调用这些函数时,我被告知环境中没有设置变量 如何在PHP Heroku应用程序的本地环境中设置环境变量 我想它应该在~/.bashrc文件中工作,但它可能取决于您使用的bas
Heroku:config
命令检索环境变量没有问题,但我需要在本地有单独的变量
我在Ubuntu上游手好闲,但我一生都不知道在哪里设置变量。我尝试过使用~/.bashrc
,并将变量放入配置脚本中,但我无法在PHP中使用$\u ENV
(或getenv()
)函数来实际检索变量。当我调用这些函数时,我被告知环境中没有设置变量
如何在PHP Heroku应用程序的本地环境中设置环境变量 我想它应该在
~/.bashrc
文件中工作,但它可能取决于您使用的bash
您可以将环境变量放入.profile
中,例如:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home
您需要为运行apache的用户执行此操作(如果使用apache或nginx或任何其他web服务器)
确保为运行apache的用户(如果是apache或nginx或您使用的任何其他web服务器)而不是您的流浪用户添加这些变量
与Heroku的不同之处在于,Heroku用户将拥有您的所有进程,包括web服务器,因此您定义的变量可以通过标准的ubuntu本地(或虚拟机化)访问,web服务器将由root用户或web用户拥有
如果您不确定是否也可以将变量放入/etc/environment
中,并从/etc/apache2/envvars
中引用此文件,如下所示:
# Load all the system environment variables.
. /etc/environment
我想它应该在
~/.bashrc
文件中工作,但它可能取决于您使用的bash
您可以将环境变量放入.profile
中,例如:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home
您需要为运行apache的用户执行此操作(如果使用apache或nginx或任何其他web服务器)
确保为运行apache的用户(如果是apache或nginx或您使用的任何其他web服务器)而不是您的流浪用户添加这些变量
与Heroku的不同之处在于,Heroku用户将拥有您的所有进程,包括web服务器,因此您定义的变量可以通过标准的ubuntu本地(或虚拟机化)访问,web服务器将由root用户或web用户拥有
如果您不确定是否也可以将变量放入/etc/environment
中,并从/etc/apache2/envvars
中引用此文件,如下所示:
# Load all the system environment variables.
. /etc/environment
正如我前面提到的,我已经尝试使用
.bashrc
作为环境变量,但是PHPgetenv()
函数无法从中检索变量。@JakeByman猜想您为本地用户(或流浪用户)修改了.bashrc
,必须为拥有apache进程的用户这样做,正如我前面提到的,我已经尝试使用.bashrc
作为环境变量,但是PHPgetenv()
函数无法从中检索变量。@JakeByman猜想您为本地用户(或流浪用户)修改了.bashrc
,这必须为拥有apache进程的用户完成