2013-12-16 177 views
0

我安装了一个composer.phar文件到我的本地目录当我运行作曲家ErrorException

php composer.phar install 

我得到以下错误:

[ErrorException]         
    phpinfo() has been disabled for security reasons 

是否有一个原因,它试图运行的phpinfo功能?

回答

1

似乎有一个原因。我发现这在代码库:

ob_start(); 
    phpinfo(INFO_GENERAL); 
    $phpinfo = ob_get_clean(); 
    if (preg_match('{Configure Command(?: *</td><td class="v">| *=> *)(.*?)(?:</td>|$)}m', $phpinfo, $match)) { 
     $configure = $match[1]; 

     if (false !== strpos($configure, '--enable-sigchild')) { 
      $warnings['sigchild'] = true; 
     } 

     if (false !== strpos($configure, '--with-curlwrappers')) { 
      $warnings['curlwrappers'] = true; 
     } 
    } 

看起来Composer并不真的喜欢卷曲包装或sigchild编译选项。

+0

反正有吗? – Tom

+0

我建议不要在CLI版本的PHP上禁用'phpinfo()'。请注意,您不必在现场服务器上运行Composer,您可以在任何其他您喜欢的机器上运行它,并使用正常的PHP版本,然后将所有内容上传到实时服务器。 – Sven