Merhaba arkadaşlar,
Başlıkta da belirttiğim gibi bu yazıda Composer SSL sorunu ve çözümüne değineceğim. Genelde benim Linux kullanırken başıma geliyor. Windows kullanırken 1-2 kez başıma geldi ve sorunu bu şekilde giderdim. Sorun işletim sisdeminden değil SSL’den kaynaklandığı için çözümü tüm sistemlerde geçerlidir.
Composer güncelleme veya kurulumu sırasında bu hatayı alıyorsanız bunun birkaç sebebi olabilir.
1 2 3 4 5 |
[Composer\Downloader\TransportException] The "https://packagist.org/packages.json" file could not be downloaded: SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed Failed to enable crypto failed to open stream: operation failed |
Öncelikle php.ini dosyasında ssl ayarlarında bir sıkıntı olup olmadığını kontrol edebilirsiniz. Eğer php ayarlarında bir sıkıntı yoksa global ssl dosyasını yeniden indirip uygun bir yere taşıyarak sorunu gidermeyi deneyebilirsiniz.
http://curl.haxx.se/ca/cacert.pem
Bu linkten global ssl dosyasını indirip Wamp, Mamp, Xampp veya siz başka bir program kullanıyorsanız onun içinde bulunan php klasörüne taşıyın. Ardından php.ini dosyasında aşağıdaki satırı bulup cacert.pem dosyanızın yolu ile değiştirin. Eğer başında “;” varsa kaldırın.
1 |
openssl.cafile=/DOSYA YOLU/cacert.pem |
Bu işlemle sorun büyük oranda çözülüyor. Ek bir işlem yapmanıza gerek kalmadan composer update komutunu deneyebilirsiniz.
1 2 3 4 |
[RuntimeException] The openssl extension is required for SSL/TLS protection but is not available. If you can not enable the openssl extension, you can disable this error, at your own risk, by setting the 'disable-tls' option to true. |
Eğer bu işlem sonuç vermediyse veya yukarıdaki gibi farklı bir hata ile karşılaşıyorsanız composer global ayarlarını değiştirmeyi deneyebilirsiniz.
1 2 |
composer config -g -- disable-tls true composer config -g secure-http false |
Bu şekilde Composer’a çalışırken SSL kullanmaması gerektiğini söylemiş oluyoruz. Tekrar “composer insall” veya “composer update” komutunu çalıştırdığınız zaman aşağıdaki gibi bir çıktı ile uyarılacaksınız.
1 2 3 4 5 6 7 |
composer install You are running Composer with SSL/TLS protection disabled. Loading composer repositories with package information Installing dependencies (including require-dev) from lock file Nothing to install or update Generating autoload files |
Eğer son 2 komut da sorunu çözmediyse ek olarak Composer önbelleğini temizleyerek tekrar deneyebilirsiniz.
1 2 |
sudo composer self-update sudo composer clear-cache |
Tüm işlemleri yaptığınız halde sorun çözülmediyse karşılaştığınız hata mesajını ve yaptığınız tüm işlemleri yorumda belirtirseniz yardımcı olmaya çalışırım.
Çözüm önerilerin için çok teşekkür ederim.
Bahsettiğiniz çözüm yolları bende işe yaramadı.
Kaspersky antivirüs programını devredışı bırakmak bende çözüm oldu.
Umarım başkalarına faydası dokunur.
Referans link. https://github.com/composer/composer/issues/6870#issuecomment-390460828
Cevabınız için teşekkür ederim. Kaspersky antivirüs programını kullanmadığım için daha önce hiç denk gelmemişti.