簡體   English   中英

在哪里為在Vagrant上運行的Ubuntu設置環境變量?

[英]Where to set environment variables for Ubuntu running on Vagrant?

我正在Heroku上運行一個PHP應用程序,並且使用heroku:config命令檢索環境變量沒有問題,但是我需要在本地擁有單獨的變量。

我無所適從到Ubuntu,但是我一生都無法弄清楚在哪里設置變量。 我嘗試使用~/.bashrc ,並將變量放入配置腳本中,但是我無法在PHP中獲得$_ENV (或getenv() )函數來實際檢索變量。 當我調用這些函數時,我被告知變量未在環境中設置。

有什么想法如何在PHP Heroku應用程序的本地環境中設置環境變量?

我猜想它應該在~/.bashrc文件中起作用,但是這可能取決於您使用的bash。

您可以將env變量放入.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本地(或vm-ized)訪問您定義的變量,該Web服務器將由root或Web用戶擁有。

如果不確定,也可以將變量放在/etc/environment並從/etc/apache2/envvars引用此文件,如下所示:

# Load all the system environment variables.
. /etc/environment

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM