2016-03-15 8 views
6

Najnowsza wersja Composer nie ciągnie Laravel, myślałem, że może to być spowodowane tym, że Composer dodał nową funkcję secure_http do pobrania z Packagist i Laravel Packagist w HTTP. Tak myślę, więc potrzebuję rozwiązania. Poprzednia wersja Composer ma się dobrze. Błąd pokazując na moim terminalu kiedy próbuje zainstalować laravel instalatora, to:Najnowsza wersja Composer nie ciągnie Laravel

Nie udało się zdekodować odpowiedź: zlib_decode(): dane o błędzie Ponowna próba z trybie awaryjnym, sprawdź https://getcomposer.org/doc/articles/troubleshooting.md#degraded-mode uzyskać więcej informacji Twoja konfiguracja nie pozwala połączenie z http://packagist.org. Aby uzyskać szczegółowe informacje, patrz https://getcomposer.org/doc/06-config.md#secure-http. Nie można w pełni załadować http://packagist.org, informacje o pakiecie zostały załadowane z lokalnej pamięci podręcznej i mogą być nieaktualne. Instalacja nie powiodła się, przywrócenie pliku ./composer.json do oryginalnej zawartości. [Composer \ Downloader \ TransportException] Twoja konfiguracja nie pozwala na połączenie z http://packagist.org. Aby uzyskać szczegółowe informacje, patrz https://getcomposer.org/doc/06-config.md#secure-http.

Odpowiedz

21

Miałem ten sam problem. Okazało się, że rozwiązanie tutaj: Reddit Discussion of the issue

Zasadniczo masz dwie opcje:

  • powrócić do poprzedniej wersji, uruchamiane

    self-update --rollback

  • Lub downgrade kompozytor uruchamiając

    composer config -g secure-http false

+1

Tak masz rację. Dostałem to pierwsze rozwiązanie i pracowałem w ten sposób, faktycznie pobrałem poprzednią wersję Composer i zmodyfikowaliśmy mod na 755 i wkleiłem do katalogu ''/usr/local/bin/''. Ale drugie rozwiązanie, które podałeś próbowałem edytować w pliku composer.phar, ale jakoś dostałem błąd. Okay, dziękuję za twoją pomoc. Spróbuję drugiego. – Shafiuzzaman

10

wreszcie ten uratował mnie,

sudo composer self-update 

sudo composer clear-cache 

sudo composer config -g secure-http false 

sudo composer update --no-scripts 

wreszcie zrobić!

0

Proponuję włączyć przy użyciu OpenSSL:

composer config -g -- disable-tls false

A potem trzeba także aktywny to w php.in

Otwarte php.ini i szukać php_openssl i skończyć jak ten extension=php_openssl.dll

Plik php_openssl.dll jest w katalogu ext swojej php więc jeśli zmieniła katalogu php i mieć błąd jak

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 

Musisz ustawić extension=php_openssl.dll do extension="your php direcroty"\ext\php_openssl.dll

0

Podczas pracy (downgrade kompozytora uruchamiając)

composer config -g secure-http false 

nadal mam takie exeption

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

mam sukces finaly pomocą dodatkowych wtyczek

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

Nadzieja to pomaga nikomu :)