2016-03-15 15 views
6

Die neueste Version von Composer zieht nicht Laravel, ich dachte, es könnte wegen Composer hinzugefügt neue secure_http-Funktion zum Herunterladen von Packagist und Laravel Packagist sind in HTTP. Das ist was ich denke, also brauche ich eine Lösung. Die vorherige Version von Composer geht es gut. Der Fehler auf meinem Terminal zeigt, wenn ich versuche, Laravel Installer zu installieren, ist:Neueste Composer-Version nicht ziehen Laravel

fehlgeschlagen Antwort zu entschlüsseln: zlib_decode(): Datenfehler Retrying mit eingeschränktem Betrieb, überprüft https://getcomposer.org/doc/articles/troubleshooting.md#degraded-mode für weitere Informationen Ihrer Konfiguration erlaubt es nicht, Verbindung zu http://packagist.org. Einzelheiten finden Sie unter https://getcomposer.org/doc/06-config.md#secure-http. http://packagist.org konnte nicht vollständig geladen werden, die Paketinformationen wurden aus dem lokalen Cache geladen und sind möglicherweise nicht mehr auf dem neuesten Stand. Die Installation ist fehlgeschlagen, wodurch ./composer.json auf den ursprünglichen Inhalt zurückgesetzt wurde. [Composer \ Downloader \ TransportException] Ihre Konfiguration erlaubt keine Verbindung zu http://packagist.org. Einzelheiten finden Sie unter https://getcomposer.org/doc/06-config.md#secure-http.

Antwort

21

Ich hatte das gleiche Problem. Gefunden hier die Lösung: Reddit Discussion of the issue

Grundsätzlich haben Sie zwei Möglichkeiten:

  • Revert zur vorherigen Version, indem Sie

    self-update --rollback

  • Oder Herabstufung Komponist von

    läuft

    composer config -g secure-http false

+1

Ja, Sie haben Recht. Ich habe diese erste Lösung und arbeite so, tatsächlich habe ich die vorherige Version von Composer heruntergeladen und mache den Mod zu 755 und füge das Verzeichnis ''/usr/local/bin/'' ein. Aber die zweite Lösung, die du gabst, versuchte ich in der Datei composer.phar zu bearbeiten, aber irgendwie bekam ich einen Fehler. Okay, danke für deine Hilfe. Ich werde das zweite versuchen. – Shafiuzzaman

10

zuletzt dieses hat mich gerettet,

sudo composer self-update 

sudo composer clear-cache 

sudo composer config -g secure-http false 

sudo composer update --no-scripts 

endlich fertig!

0

Ich schlage vor, OpenSSL zu ermöglichen, mit:

composer config -g -- disable-tls false

Und dann müssen Sie auch aktiv in php.in

öffnen php.ini und die Suche nach php_openssl und Sie am Ende wie diese extension=php_openssl.dll

Die php_openssl.dll Datei ist in ext Verzeichnis Ihrer PHP so, wenn Sie PHP-Verzeichnis geändert und einen Fehler haben wie

PHP Warning: PHP Startup: Unable to load dynamic library 
'C:\php\ext\php_openssl.dll' - The specified module could not be found. 
in Unknown on line 0 

Sie müssen extension=php_openssl.dll einstellen zu extension="your php direcroty"\ext\php_openssl.dll

0

Wenn (Herabstufung Komponist durch laufen) läuft

composer config -g secure-http false 

Ich habe immer noch eine Ausnahme

Fatal error: Uncaught Error: Call to undefined method Composer\Package\RootPackage::getConfig() ... 

ich einen Erfolg finaly bekam mit zusätzlichen --no-Plugins

composer config -g secure-http false --no-plugins 
composer self-update --no-plugins 

this helps jemand :)