在MAMP中设置环境变量?

时间:2012-06-29 04:18:55

标签: php macos mamp

我假设可以在〜/ .bash_profile中设置MAMP环境变量,但似乎在那里设置它们并不总是立即生效。例如,我只是在我的.bash_profile中设置了一个变量,并尝试重新启动MAMP服务器,重新启动MAMP本身,甚至退出我的计算机,似乎没有任何工作。仍无法从我的环境中访问该变量。有没有其他方法来设置我缺少的MAMP环境变量或者是否需要清除缓存?

提前致谢。

7 个答案:

答案 0 :(得分:33)

启动apache时,MAMP会将/Applications/MAMP/Library/bin/envvars的内容加载到其环境变量中。所以你可以编辑文件并添加:

MY_VAR="foo"
export MY_VAR

然后像这样访问该变量:

echo $_ENV["MY_VAR"];

打印:

foo

OSX优胜美地的更新:

envvars重命名为_envvars

请参阅:MAMP Pro 3.05 on Mavericks updated to Yosemite - Apache does not start

答案 1 :(得分:32)

您还可以在主机设置面板的扩展选项卡中的additional parameters for <VirtualHost>:部分中的MAMP Pro中设置PHP环境变量(在MAMP中不可用)。

mamp setting php environment variable

屏幕截图来自MAMP Pro v 3.0.3

答案 2 :(得分:4)

您可以在Apache配置中设置环境变量...

/Applications/MAMP/conf/apache/httpd.conf

SetEnv MY_VAR theValue
SetEnv ANOTHER thisIsTheValue

答案 3 :(得分:4)

MAMP正在寻找&#34; / Applications / MAMP / Library / bin / envvars&#34;,如果文件没有,只需创建它并添加你的环境变量。

答案 4 :(得分:0)

我假设你在谈论本地服务器?

我注意到,如果你看一下apache可以运行多个实例的进程你可能需要检查。如果是,则单独退出它们,因为重新启动将不会进行新的更改,直到重新启动所有实例。有点值得尝试。

答案 5 :(得分:0)

如果您仍然无法获取环境变量:

您可能需要在

中编辑真实 httpd.conf
  

〜/ Library / Application Support / appolute / MAMP PRO /

而不是

  

/应用程序/ MAMP / CONF /阿帕奇/

此外,您可能需要使用 getenv()而不是 $ _ ENV

答案 6 :(得分:0)

但它不适用于El Capitan。您应该停用System Integrity Protection

original