2013-12-16 216 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