Menyelesaikan masalah Ralat Jabat Tangan SSL/TLS dalam cURL
Apabila menggunakan cURL untuk mewujudkan sambungan selamat menggunakan protokol SSL/TLS, anda mungkin menghadapi ralat mesej "Masalah berlaku di suatu tempat dalam jabat tangan SSL/TLS." Ini menunjukkan isu semasa proses pengesahan dan penyulitan antara cURL dan pelayan jauh.
Walaupun cuba penyelesaian biasa seperti melumpuhkan pengesahan SSL (CURLOPT_SSL_VERIFYPEER) dan menetapkan sijil CA (CURLOPT_CAINFO), isu ini berterusan.
Penyelesaian:
Punca masalah ini terletak pada kekurangan sijil akar terbina dalam cURL. Kebanyakan penyemak imbas moden termasuk sijil akar, tetapi cURL memerlukan laluan eksplisit ke fail pihak berkuasa sijil dipercayai (CA) bernama "cacert.pem."
Untuk menyelesaikan isu ini, ikut langkah berikut:
curl_setopt($ch, CURLOPT_CAINFO, '/path/to/cert/file/cacert.pem');
Fail CA ini mengandungi sijil akar yang dipercayai yang membenarkan cURL mengesahkan sijil pelayan semasa jabat tangan SSL/TLS. Tanpa fail ini, proses pengesahan gagal, mengakibatkan mesej ralat jabat tangan.
Selepas melengkapkan langkah ini, anda sepatutnya dapat mewujudkan sambungan HTTPS selamat menggunakan cURL.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat \'Masalah Berlaku Di suatu Tempat dalam Jabat Tangan SSL/TLS\' dalam cURL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!