我试图让apache / php识别我的git的路径。我一直在研究和查看网络的各个角落,但无法找到如何做到这一点。基本上,无论我尝试什么,当我运行echo phpinfo();
时,Apache Environment
路径都不会从/usr/bin:/bin:/usr/sbin:/sbin
更改。当我在PHP中运行system('echo $PATH');
时,它会读取相同的内容。
系统信息:
这是我到目前为止所尝试编辑的内容:
到目前为止,我没有尝试过更改$PATH
变量。有什么想法吗?
解
所以这是最终的解决方案。我编辑了
/System/Library/LaunchDaemons/org.apache.httpd.plist
并添加了
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin</string>
</dict>
答案 0 :(得分:32)
您可以在/System/Library/LaunchDaemons/org.apache.httpd.plist
。
docs中的更多内容。
答案 1 :(得分:4)
您是否更新了用户'_www'的PATH环境变量? Apache将从用户运行本身读取环境变量。或者,看起来您在更新PATH环境变量后没有重启apache。
如果你想在PHP中修改环境变量,getenv()和putenv()可能是更好的选择。
putenv:http://www.php.net/manual/en/function.putenv.php
$ path = getenv('PATH'); putenv(“PATH = $ path:/ new_path_that_you_want_to_add”);
答案 2 :(得分:3)
El Capitan的重要提示(对于新答案抱歉 - 我没有足够的Rep来评论)
在OSX 10.11上,/ System / Library文件夹受到保护,因此无法编辑文件。
你需要:
csrutil disable
csrutil enable
希望有所帮助
答案 3 :(得分:1)
我创建了这个要点,从上面的信息中帮助我:
https://gist.github.com/srayhunter/5208619
我的问题是PHP没有找到我们在/ usr / local / bin下安装的程序。一旦我们完成了上述操作,它就可以在mac osx上运行并且运行良好。
答案 4 :(得分:0)
对于ubuntu服务器,在/ etc / apache2 / envvars中, 对于centos服务器,在/ etc / sysconfig / httpd中, 添加:
export PATH=<your php cli path>
并重新启动apache
答案 5 :(得分:0)
与我安装Derby的问题类似。我解决它的方法是打开TextEdit。选择文件&gt;此时打开按Shift + Command +。 ,这将允许您查看所有文档。前往用户目录并搜索名为“.profile”的文件。打开它并添加导出VARIABLE = Value行,例如:
导出DERBY_HOME = / opt / local / share / java / derby /
保存文档并重新启动终端以查看更改是否生效。