Anda harus mengaktifkan ekstensi openssl untuk mengunduh file melalui https


123

Saya ingin menginstal Zend Framework 2. Jadi saya mengunduh aplikasi kerangka. Seperti yang disebutkan di manual ZF2, kita harus mengeluarkan perintah

php composer.phar install 

Di dalam kerangka.

Tapi saya mendapatkan kesalahan

Anda harus mengaktifkan ekstensi openssl untuk mengunduh file melalui https

Kemudian saya mengaktifkan ssl_module di wamp saya, saya memeriksa file php_ini dan saya dapat melihat baris berikut

ekstensi = php_openssl.dll

Masih saya mendapatkan kesalahan yang sama. Ada yang tahu apa yang saya lewatkan?


1
Saya mengalami masalah ini saat menjalankan travis-ci dan ternyata tidak seperti setiap distro linux di bawah matahari, beberapa lingkungan travis-ci yang lebih lama dikompilasi tanpa openssl, kalau-kalau ada orang lain yang menemukan masalah yang sama.
Kzqai

@Kzqai apakah mungkin untuk mengkompilasi ekstensi ini di travis, seperti untuk PHP 5.3.3 dalam pertanyaan saya ? Saya melihat dari buku resep mereka bahwa Anda dapat menginstal ekstensi PECL, tetapi menurut saya ekstensi openssl tidak tersedia melalui PECL.
Jeff Puckett

Jawaban:


286

PHP CLI SAPI menggunakan php.inimodul yang berbeda dari CGI atau Apache.

Temukan baris ;extension=php_openssl.dllmasuk wamp/bin/php/php#.#.##/php.ini dan hapus tanda koma dengan menghapus titik koma ( ;) dari awal baris.


Saya juga harus mengaktifkan ekstensi phar (extension = php_phar.dll) dan seperti yang dikatakan di bawah ini, modul apache ssl!
Diego Favero

1
"PHP CLI SAPI menggunakan php.ini yang berbeda dari modul CGI atau Apache." Itu triknya!
George D.

Jika Anda tidak dapat menemukan baris itu di Anda php.inicukup tambahkan baris di extension=php_openssl.dllbawah bagian Ekstensi Dinamis di dalamnya.
totymedli

Saya Menggunakan xampp, Komposer memberikan kesalahan terbuka ssl yang sama bahkan setelah menghapus ';' ekstensi openssl di php.ini.
Shashikumar Misal

Jika Anda menggunakan Mac dan port, Anda dapat memilih versi PHP dengan port select php php55dan menginstal ekstensiport install php55-openssl
Prabowo Murti

36

Pastikan Anda mengedit file php.ini yang benar.

Referensi: https://github.com/composer/composer/issues/1440

"WAMP menggunakan file php.ini yang berbeda di CLI dan Apache. Saat Anda mengaktifkan php_openssl melalui WAMP UI, Anda mengaktifkannya untuk Apache, bukan untuk CLI. Anda perlu mengubah C: \ wamp \ bin \ php \ php- XYZ \ php.ini untuk mengaktifkannya untuk CLI. "


2
siapa yang mengira bahwa ... Sungguh ... Ini memecahkan masalah. Terima kasih
Ruwantha

20

pastikan Anda memiliki jalur yang benar ke folder ekstensi

extension_dir = "ext"

secara default dikomentari dengan; karakter


1
baris ini telah dikomentari sepenuhnya dan sekarang berfungsi
Brian Dillingham

penting untuk instalasi windows!
haakym

Dimana garis ini? Di file mana? php.ini dalam 1, C: \ wamp64 \ bin \ apache ATAU 2. C: \ wamp64 \ bin \ php \ php7.0.0?
MyDaftQuestions

9

Saya juga mengalami masalah yang sama saat bermain-main dengan Zend Framework 2 dan komposer. Saya menggunakan PHP 5.4 (diinstal melalui macports) dan solusi saya adalah menginstal openssl untuk PHP 5.4 melalui macports juga.

sudo port menginstal php54-openssl

5

Saya telah menghadapi masalah ini, tetapi mengkonfigurasi openssl (juga untuk cli) tidak membantu.

Saya telah memperbarui komposer dan ini mengatasi masalah saya.

Ketik saja:

$ php composer.phar self-update

atau

$ composer selfupdate

Semoga berhasil!


4

Saya menggunakan XAMPP. Di C: \ xampp \ php \ php.ini, entri untuk openssl tidak ada, jadi saya menambahkan "extension = php_openssl.dll" pada baris 989, dan komposer berfungsi.


4

Anda harus mengaktifkan "extension = php_openssl.dll" di kedua file (php dan apache). jalur file pc saya adalah ini:

  1. C: \ wamp \ bin \ php \ php5.3.13 \ php.ini

  2. C: \ wamp \ bin \ apache \ apache2.2.22 \ bin \ php.ini


Ini salah. Periksa dengan phpinfo () php.ini mana yang digunakan
ThaDafinser

3

Uttam, jika masalah Anda tidak terpecahkan maka coba pendekatan 3 langkah berikut. Itu berhasil untuk saya karena saya memiliki masalah yang persis sama.

step1: klik pada ikon baki wamp.

langkah2: goto menu apache-> modul apache

langkah3: klik pada item menu "ssl_module"

itu akan secara otomatis restart wamp. jika wamp tidak direstart secara otomatis maka restart melalui menu wamp tray-> Restart All services. Setelah restart, konfirmasikan bahwa "ssl_module" datang seperti yang dicentang di bawah menu apache-> modul apache

setelah itu coba saja install php composer.phar melalui respon yang anda bagikan, file php.ini berisi extension = php_openssl.dll dan direktori php / ext juga memiliki file "php_openssl.dll"

semoga berhasil


3

Jawaban Valery membantu saya: https://stackoverflow.com/a/14265815/492457

WAMP menggunakan file php.ini yang berbeda di CLI dan untuk Apache. ketika Anda mengaktifkan php_openssl melalui WAMP UI, Anda mengaktifkannya untuk Apache, bukan untuk CLI. Anda perlu memodifikasi C: \ wamp \ bin \ php \ php-5.4.3 \ php.ini untuk mengaktifkannya untuk CLI.


2

Pastikan Anda memperbarui php.iniuntuk CLI. Untuk kasus saya ini adalah C:\wamp\bin\php\php5.4.3\php.inidan extension=php_openssl.dllbaris komentar .


1

Jawaban terlambat tetapi menambahkan sehingga orang lain dapat mempelajari alasannya.

Anda juga perlu mengedit file php.ini di lokasi "wamp \ bin \ php \ php-XYZ".


0

Saya harus menghapus komentar extension=openssldalam php.inifile agar semuanya bekerja!


0

Hati-hati jika Anda menggunakan wamp jangan gunakan wamp ui untuk mengaktifkan extension=php_openssl.dll

cukup masuk ke direktori php Anda, misalnya: C:\wamp\bin\php\php5.4.12dan edit php.inidan hapus komentar pada extension=php_openssl.dll.

itu harus bekerja.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.