it-roy-ru.com

Задать переменные среды в MAMP?

Я предполагаю, что переменные среды MAMP могут быть установлены в ~/.bash_profile, но кажется, что их установка не всегда вступает в силу сразу. Например, я просто установил переменную в своем .bash_profile и попытался перезапустить серверы MAMP, перезапустить сам MAMP и даже выйти из моего компьютера, и, похоже, ничего не работает. Переменная все еще не доступна из моего окружения. Есть ли другой способ установить MAMP env var, который мне не хватает, или есть кеш, который мне нужно очистить?

Заранее спасибо.

22
jhnnycrvr

MAMP загрузит содержимое /Applications/MAMP/Library/bin/envvars в свои переменные окружения при запуске Apache. Таким образом, вы можете отредактировать файл и добавить:

MY_VAR="foo"
export MY_VAR

Затем получите доступ к этой переменной следующим образом:

echo $_ENV["MY_VAR"];

печатает:

foo

Обновление для OSX Yosemite:

переименуйте envvars в _envvars

Смотрите: MAMP Pro 3.05 на Mavericks обновлен до Yosemite - Apache не запускается

33
sxalexander

Вы также можете установить переменные среды PHP в MAMP Pro (недоступно в MAMP) в разделе additional parameters for <VirtualHost>: на расширенной вкладке панели настроек хостов.

mamp setting php environment variable

Скриншот из MAMP Pro v 3.0.3

31
Mike Grace

MAMP ищет "/ Applications/MAMP/Library/bin/envvars", если файл не создается, просто создайте его и добавьте переменные окружения.

4
martinedwards

Вы можете установить переменные окружения в конфигурации Apache ...

/Applications/MAMP/conf/Apache/httpd.conf

SetEnv MY_VAR theValue
SetEnv ANOTHER thisIsTheValue
4
doublejosh

Я предполагаю, что вы говорите о локальном сервере?

Я заметил, что если вы посмотрите на процессы, в которых Apache может работать с несколькими экземплярами, которые вам, возможно, потребуется проверить. Если они есть, выйдите из них по отдельности, так как перезапуск не примет новые изменения, пока все экземпляры не будут перезапущены. Что-то попробовать.

0
TNC

Но это не работает с El Capitan. Вы должны отключить Защита целостности системы .

оригинал

0
fdrv

Если вы все еще не можете получить переменные среды:

вам может понадобиться отредактировать ваш real httpd.conf в

~/Библиотека/Поддержка приложений/appsolute/MAMP PRO /

вместо

/ Applications/MAMP/CONF/Apache /

Также вам может понадобиться использовать getenv () вместо $ _ENV

0
Sebastien Horin