2013-03-07 129 views
15

我想在命令行中使用作曲:作曲家無法下載文件

php composer.phar update 
php composer.phar install 
php composer.phar self-update 
php composer.phar selfupdate 

無論我做什麼,我總是收到相同的錯誤消息:

文件無法下載。無法打開流

我落後於代理。如果我使用瀏覽器並輸入與那些不適用於命令行的URL相同的URL,則沒有問題。

我該怎麼辦?

回答

19

如果您使用的是HTTP代理之後的作曲家,則可以使用標準http_proxyHTTP_PROXY環境變量。只需將其設置爲您的代理的URL。許多操作系統已經爲你設置了這個變量。

如:

HTTP_PROXY="http://my-corp-proxy.mcdonalds" php composer.phar install 

獎勵積分,如果你把它變成你的.bashrc如果您在Linux/OS X或Windows的環境設置。

爲了方便起見,您可以導出變量,然後不必一直輸入。

export HTTP_PROXY="http://my-corp-proxy.mcdonalds" 
php composer.phar install 
+0

對不起,我真的是一個關於網絡事物和代理的新手..我無法訪問代理服務器,因爲我在一家公司工作,我使用的是Windows 7 ... HTTP_PROXY之後的網址是什麼? – mlwacosmos 2013-03-07 10:22:26

+2

@mlwacosmos在Win7上添加一個環境變量,你可以按照這個指南:http://www.itechtalk.com/thread3595.html你需要定義HTTP_PROXY作爲變量名和'http://your.proxy.address.or .ip /'作爲值。然後,您必須重新啓動作曲家的CMD以查看更改。 – Seldaek 2013-03-07 11:08:43

9

正確的一種簡單的方法來下一個代理在Windows上運行作曲家打開控制檯(CMD),進入到你的項目的位置,並運行此命令:

C:\wamp\htdocs\myproject\> SET HTTP_PROXY=http://username:[email protected]:8080 && php composer.phar install 

PD:你必須改變參數,如:用戶名,密碼,proxy.yourdomain.com 8080到你

我希望這對您有所幫助

+1

感謝您將完整的用戶名和密碼部分添加到網址中。 – Abinadi 2014-02-26 16:05:37

+0

這工作無瑕 – dExIT 2017-11-30 13:45:56

1

,不設置https_proxy(只是http_proxy)!

+0

.......但爲什麼? – 2017-09-28 14:46:48

+0

,因爲如果未設置,則https_proxy默認爲http_proxy – DarkMukke 2018-01-10 11:34:41