2016-03-15 24 views
6

Phiên bản mới nhất của Composer không phải là kéo Laravel, tôi nghĩ có thể là do Composer đã thêm tính năng secure_http mới để tải xuống từ Packagist và Laravel Packagist trong HTTP. Đây là những gì tôi nghĩ, vì vậy tôi cần giải pháp. Phiên bản trước của Composer hoạt động tốt. Các lỗi hiển thị trên các thiết bị đầu cuối của tôi khi tôi đã cố gắng để cài đặt Laravel installer là:Phiên bản Composer mới nhất không kéo Laravel

Không thể giải mã câu trả lời: zlib_decode(): dữ liệu lỗi Retrying với chế độ xuống cấp, kiểm tra https://getcomposer.org/doc/articles/troubleshooting.md#degraded-mode để biết thêm cấu hình của bạn không cho phép kết nối với http://packagist.org. Xem https://getcomposer.org/doc/06-config.md#secure-http để biết chi tiết. http://packagist.org không thể tải đầy đủ, thông tin gói được tải từ bộ đệm cục bộ và có thể lỗi thời Cài đặt không thành công, hoàn nguyên ./composer.json về nội dung gốc. [Composer \ Downloader \ TransportException] Cấu hình của bạn không cho phép kết nối tới http://packagist.org. Xem https://getcomposer.org/doc/06-config.md#secure-http để biết chi tiết.

Trả lời

21

Tôi cũng gặp vấn đề tương tự. Tìm thấy giải pháp ở đây: Reddit Discussion of the issue

Về cơ bản, bạn có hai lựa chọn:

  • Revert để phiên bản trước, bằng cách chạy

    self-update --rollback

  • Hoặc, hạ cấp nhà soạn nhạc bằng cách chạy

    composer config -g secure-http false

+1

Có bạn là đúng. Tôi đã nhận được giải pháp đầu tiên và làm việc theo cách đó, thực sự tôi đã tải xuống phiên bản trước của Composer và thay đổi mod thành 755 và dán vào thư mục ''/usr/local/bin/''. Nhưng giải pháp thứ hai bạn đã thử tôi đã chỉnh sửa trong tệp composer.phar nhưng bằng cách nào đó tôi đã nhận được lỗi. Được rồi, cảm ơn sự giúp đỡ của bạn. Tôi sẽ thử cái thứ hai. – Shafiuzzaman

10

cuối cùng này đã cứu tôi,

sudo composer self-update 

sudo composer clear-cache 

sudo composer config -g secure-http false 

sudo composer update --no-scripts 

cuối cùng đã hoàn tất!

0

Tôi đề nghị để cho phép openssl sử dụng:

composer config -g -- disable-tls false

Và sau đó bạn cũng cần phải tích cực nó trong php.in

mở php.ini và tìm kiếm php_openssl và bạn kết thúc như extension=php_openssl.dll

Các php_openssl.dll file này trong thư mục ext của php của bạn vì vậy nếu bạn thay đổi thư mục php và có một lỗi như

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 

Bạn cần phải thiết lập extension=php_openssl.dll để extension="your php direcroty"\ext\php_openssl.dll

0

Khi chạy (hạ cấp nhà soạn nhạc bởi chạy)

composer config -g secure-http false 

tôi vẫn có một ngoại lệ

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

tôi đã là một thành công finaly sử dụng thêm --no-plugins

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

Hope this helps ai :)

Các vấn đề liên quan