Где установить переменные окружения для Ubuntu, работающего на Vagrant?

Я запускаю приложение PHP на Heroku, и у меня нет проблем с получением переменных окружения с помощью heroku:config команда, но мне нужно иметь отдельные переменные локально.

Я бродяжничаю в Ubuntu, но пока не могу понять, где на самом деле установить переменные. Я пытался использовать ~/.bashrc, а также помещая переменные в сценарий обеспечения, но я не могу получить $_ENV (или же getenv()) функция в PHP для фактического получения переменной. Когда я вызываю эти функции, мне говорят, что переменные не установлены в среде.

Любые идеи, как установить переменные среды в локальной среде для приложения PHP Heroku?

1

Решение

Я думаю, это должно работать с ~/.bashrc файл, но это может зависеть от того, какой bash вы используете.

Вы можете поместить свои переменные env в .profile например:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home

Это нужно сделать для пользователя, который запускает apache (если вы используете apache, nginx или любой другой веб-сервер)
Обязательно добавьте эти переменные для пользователя, который запускает apache (если apache или nginx или любой другой веб-сервер, который вы используете), а не для вашего бродячего пользователя.

Разница с Heroku заключается в том, что ваш пользователь heroku будет владеть всем вашим процессом, включая веб-сервер, так что вы можете получить доступ к переменной, которую вы определяете, со стандартным локальным (или виртуальным) Ubuntu веб-сервером, принадлежащим пользователю root или веб-пользователю. ,

Если вы не уверены, что вы также можете разместить переменные внутри /etc/environment и ссылаться на этот файл из /etc/apache2/envvars как :

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

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]