2016-08-17 21 views
0

私たちのサーバー(CentOS 5.11)でPHPがv5.3.2にアップデートされた後、私は他の環境にあるようにComposerをインストールしたいと思っています。ComposerとPHPのバージョン、ComposerのインストールでPHPのバージョンを無視して、悪い考えですか?

Composer docsは、「作者はPHP 5.3.2以降で実行する必要があります」と述べています。私はPHP 5.4.45を持っています。それでも、それは作曲をインストールする際のシステム要件を無視して扱う私はthis answerを見つけ警告

PHP Warning: file_get_contents(https://getcomposer.org/versions): failed to open stream: Connection timed out in - on line 762 
PHP Warning: Invalid argument supplied for foreach() in - on line 508 
None of the 0 stable version(s) of Composer matches your PHP version (5.4.45/ID: 50445) 

で終了

curl -sS https://getcomposer.org/installer | php 

をしようとしたとき。

これは何かできますか、やや怖い/無意識のことですか?そして、私が使用できるComposerの他のバージョン(「不安定」または他のバージョン)がありますか?あるいは、PHPを再び更新する必要がありますか?> 5.6.x?

ありがとうございました!

+0

これはあなたの質問には答えませんが、はい、PHPをさらにアップグレードする必要があります。 [PHP 5.4は2015年9月にセキュリティアップデートの提供を停止し、PHP 5.5は2016年7月にサービスを停止しました。PHP 5.6および7.0はおよそ2018年末までセキュリティアップデートを受け取ります。](https://secure.php.net/supported -versions.php) – Chris

+0

はipv6の問題のようです。 ipv6を無効にした後、インストーラはアドレス解決のためにipv4を使用するように強制され、すべてうまくいった。 – legacyofleo

答えて

2

PHPバージョンの問題ではなく、接続の問題です。

あなたは3つのメッセージ(2つの警告と1つの作曲者の情報)があります。あなたのPHPのための

(第一警告)、それは反復処理し、リストを持っていなかったため、接続タイムアウトので、(第二警告)にバージョンの作曲者のリストのリストを取得することができませんでしたComposerのインストーラとマッチComposerのバージョンに適しこれは、(第3のメッセージ)コンポーザーのバージョンが見つからなかったことを意味する。

根本的な問題は、最初の警告です。この行

file_get_contents(https://getcomposer.org/versions); 

は動作しませんでした。それがあなたの問題です。

提供された情報に基づいて正確な解決策を説明することは難しいです。

+0

確かにそうです。それを指摘していただきありがとうございます。これは、たとえexample.comのような「カール」が非常にゆっくりではあるものの、期待される結果を返すため、何もするのは難しいようです。おそらくcomposer.orgの問題?または早めにタイムアウトするとカールしますか? – Kyrre

+0

SSLが必要な場合があります。テストファイルに 'file_get_contents(https://getcomposer.org/versions);'だけを実行しようとしましたか? –

+0

はい、[こちら](https://getcomposer.org/versions)と同じデータが返されます。最初の数回はテストしましたが、「そのようなファイルやディレクトリはありません」と主張して動作しませんでした。しかし、今は一貫しています。何か怪しいようです。それは構文エラーでしょうか? urlパラメータを囲む引用符はありません。しかし、これは端末出力の結果である可能性があります。私はもっ​​と深く掘り下げなければなりません – Kyrre

0

私はそれがプロキシの問題かもしれないと思う

0

をインストールすることができた後

curl -sS http://getcomposer.org/installer | php 

、HTTPSからHTTPに変更。 https_proxyhttp_proxy環境変数が削除されました(Windows 10)。そしてそれをインストールし、プロキシを空白にします。それは私にとってはうまくいくはずです。

関連する問題