Donkarnash
Donkarnash

Reputation: 12845

Connection timeout error while updating composer on Digital Ocean

I am able to ssh into my droplet. Am also able to apt update and apt upgrade.

When I try to run sudo composer self-update or composer update, I am getting connection timeout error.

The "https://getcomposer.org/versions" file could not be downloaded: failed to open stream: Connection timed out  

output of ufw status

To      Action    From
22      ALLOW     Anywhere
80      ALLOW     Anywhere
443     ALLOW     Anywhere
25      ALLOW     Anywhere
10000   ALLOW     Anywhere     

output of composer diagnose

Checking platform settings: OK
Checking git settings: OK
Checking http connectivity to packagist: FAIL
[Composer\Downloader\TransportException] The "http://packagist.org/packages.json" file    could not be downloaded: failed to open stream: Connection timed out
Checking https connectivity to packagist: FAIL
[Composer\Downloader\TransportException] The "https://packagist.org/packages.json" file    could not be downloaded: failed to open stream: Connection timed out
Checking github.com rate limit: OK
Checking disk free space: OK
Checking composer version: 

[Composer\Downloader\TransportException]                                     
The "https://getcomposer.org/version" file could not be downloaded: failed   
to open stream: Connection timed out

output of composer --version

Composer version 1.0-dev (9e9c1917e1ed9f3f78b195a785aee3c6dc3cb883) 2015-11-23 10:31:23  

output of curl IL http://packagist.org/packages.json

HTTP/1.1 200 OK
Server: nginx
Date: Sun, 10 Dec 2017 08:40:20 GMT
Content-Type: application/json
Content-Length: 1302
Last-Modified: Sun, 10 Dec 2017 08:38:28 GMT
Connection: keep-alive
ETag: "5a2cf284-516"
Cache-Control: private, max-age=0, no-cache
Accept-Ranges: bytes  

I tried to manually get a copy of latest composer but it also doesn't work

output of php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

PHP Warning:  copy(https://getcomposer.org/installer): failed to open stream: Connection timed out in Command line code on line 1  

What could be the reason? I was all working till about a week ago. I am able to visit (browse) the webpages hosted on my droplett. Am also able to apt update and apt upgrade.

Upvotes: 4

Views: 18086

Answers (4)

Mark Khor
Mark Khor

Reputation: 414

My Issue is caused by PHP 7.2, after switch back to PHP 7.1 'sphp 7.1', run the command 'composer update' again, and it works

Upvotes: 0

JessGabriel
JessGabriel

Reputation: 1082

I also found a bug on executing composer command this last time about this timeout. Run "compose diag" then restart the command solved the problem if it is not related to ipv6

Upvotes: 0

JessGabriel
JessGabriel

Reputation: 1082

You can run this command as root to make IPV4 more prior than IPV6:

sudo sh -c "echo 'precedence ::ffff:0:0/96 100' >> /etc/gai.conf"

Upvotes: 10

Nico Haase
Nico Haase

Reputation: 12131

https://getcomposer.org/doc/articles/troubleshooting.md#operation-timed-out-ipv6-issues- could solve your problem. And if composer update is slow afterwards, try running it with a more recent PHP version. Running it with PHP 7 instead of PHP 5 will cause a big speedup

Upvotes: 5

Related Questions