我有一个稳定的连接,但是当我在项目根目录上运行Composer\Downloader\TransportException
时,作曲家总是抛出composer update
,然后是在下载文件时发出超时错误的消息。
运行composer diagnose
后,一切似乎都通过了测试。
我尝试卸载,之后,我无法安装composer。当我用curl -sS https://getcomposer.org/installer | php
下载作曲家时,作曲家将其打印到流:
~ curl -sS https://getcomposer.org/installer | php -d detect_unicode=Off
All settings correct for using Composer
Downloading...
Download failed: Failed to open https://getcomposer.org/composer.phar (Operation timed out after 4994 milliseconds with 229148 out of 1016883 bytes received)
Downloading...
Download failed: Failed to open https://getcomposer.org/composer.phar (Operation timed out after 4988 milliseconds with 261916 out of 1016883 bytes received)
Downloading...
SlowTimer [5000ms] at curl: https://getcomposer.org/composer.phar
Download failed: Failed to open https://getcomposer.org/composer.phar (Operation timed out after 4996 milliseconds with 147228 out of 1016883 bytes received)
The download failed repeatedly, aborting.
我正在使用Ubuntu 14.04 LTS
。
关于为什么会这种情况发生的任何想法?
答案 0 :(得分:2)
我以前建议过。尝试composer update/install -o -vvv
并检查是否正在从编辑器的缓存加载包。
如果是,请尝试清除作曲家的缓存或尝试添加-cache-dir=/dev/null
。
要强制下载存档而不是克隆来源,请将--prefer-dist
选项与--no-dev
结合使用。
否则你可以尝试提高作曲家的进程超时值:
export COMPOSER_PROCESS_TIMEOUT=600 ( defaults to 300 )
答案 1 :(得分:1)
我不确定这适用于您的重新安装选项,但它可能适用于您的初始超时问题(除了Vector的建议);我使用hhvm to run composer,它指定了自己的请求超时参数,它覆盖了您在composer.json或环境变量中指定的任何内容。上一个链接包含更详细地配置超时的相应信息,但我的示例bash别名可能有所帮助。
alias composer='hhvm -v ResourceLimit.SocketDefaultTimeout=60 -v Http.SlowQueryThreshold=60000 -v Eval.Jit=false /home/liam/bin/composer'