2016-03-15 9 views
6

L'ultima versione di Composer non sta trascinando Laravel, ho pensato che potrebbe essere dovuto al fatto che Composer ha aggiunto una nuova funzione secure_http per il download da Packagist e Laravel Packagist sono in HTTP. Questo è quello che penso, quindi ho bisogno di una soluzione. La versione precedente di Composer sta andando bene. L'errore che mostra sul mio terminale quando stavo cercando di installare installatore laravel, è:L'ultima versione del compositore non sta eseguendo Laravel

Impossibile decodificare la risposta: zlib_decode(): Nuovo tentativo errore di dati con modalità degradata, controllare https://getcomposer.org/doc/articles/troubleshooting.md#degraded-mode per ulteriori informazioni La configurazione non permette connessione a http://packagist.org. Vedi https://getcomposer.org/doc/06-config.md#secure-http per i dettagli. http://packagist.org non può essere caricato completamente, le informazioni sul pacchetto sono state caricate dalla cache locale e potrebbero non essere aggiornate Installazione fallita, ripristino ./composer.json al suo contenuto originale. [Composer \ Downloader \ TransportException] La configurazione non consente la connessione a http://packagist.org. Vedi https://getcomposer.org/doc/06-config.md#secure-http per i dettagli.

risposta

21

Ho avuto lo stesso problema. Trovato la soluzione qui: Reddit Discussion of the issue

In sostanza, si hanno due opzioni:

  • tornare a versione precedente, eseguendo

    self-update --rollback

  • Oppure, downgrade compositore eseguendo

    composer config -g secure-http false

+1

Sì hai ragione. Ho ottenuto la prima soluzione e ho lavorato in questo modo, in realtà ho scaricato la versione precedente di Composer e ho modificato la mod in 755 e incollata nella directory ''/usr/local/bin/''. Ma la seconda soluzione che hai dato ho provato a modificare nel file composer.phar ma in qualche modo stavo ottenendo un errore. Ok, grazie per il tuo aiuto. Proverò il secondo. – Shafiuzzaman

10

finalmente questo mi ha salvato,

sudo composer self-update 

sudo composer clear-cache 

sudo composer config -g secure-http false 

sudo composer update --no-scripts 

finalmente fatto!

0

suggerisco per consentire OpenSSL utilizzando:

composer config -g -- disable-tls false

E poi è anche necessario attiva in php.in

Aprire php.ini e cercare php_openssl e si finisce come questo extension=php_openssl.dll

Il file php_openssl.dll è in ext directory del vostro PHP quindi se cambiate directory php e hanno un errore come

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 

È necessario impostare extension=php_openssl.dll a extension="your php direcroty"\ext\php_openssl.dll

0

Quando si esegue (downgrade compositore da corsa)

composer config -g secure-http false 

Ho ancora un esibirci

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

ho ottenuto un successo finalmente utilizzando ulteriori --no-plugins

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

Spero che questo aiuti chiunque :)