PHP exec(“哪个PHP”)返回错误的结果
我的OS X Mavericks上的本地开发站点使用execwhich php命令。这个exec命令的结果是/usr/bin/php,这实际上是错误的,它应该返回opt/local/php5/bin/php。PHP exec(“哪个PHP”)返回错误的结果,php,macos,Php,Macos,我的OS X Mavericks上的本地开发站点使用execwhich php命令。这个exec命令的结果是/usr/bin/php,这实际上是错误的,它应该返回opt/local/php5/bin/php。 opt/local/php5/bin/php是php在终端会话中执行的命令的结果。我如何解决这个问题?如果你问错了问题,你会得到错误的结果 which命令返回可执行文件的完整路径。查找命令的位置在$PATH环境变量中定义,如下所示: /usr/local/sbin:/usr/local/b
opt/local/php5/bin/php是php在终端会话中执行的命令的结果。我如何解决这个问题?如果你问错了问题,你会得到错误的结果 which命令返回可执行文件的完整路径。查找命令的位置在$PATH环境变量中定义,如下所示:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/android-sdk/sdk/platform-tools:/opt/android-sdk/sdk/tools
这些是常用的命令路径,用冒号分隔
显然,您的机器上安装了多个PHP。您得到的是主路径,可能是由您的数据包管理器安装的
只有将/opt/local/php5/bin添加到Web服务器用户的环境中,才能找到/opt中的一个,并且必须在/usr/bin之前
现在,如何设置Web服务器的$PATH?根据您的服务器Apache、Nginx……和您的发行版,有不同的可能性。对于类似Debian的系统上的Apache,它通常是/etc/apache2/envvars
如果尚未定义路径,只需添加以下行:
export PATH="/opt/local/php5/bin:$PATH"
请注意,开头的路径没有$符号
然后重新启动您的Web服务器。您的apache使用的php是否可能重复?