Isu Sambungan Tapak HTTPS dengan cURL: Membetulkan Panjang Kandungan Sifar
Apabila cuba menyambung ke tapak HTTPS menggunakan cURL, anda mungkin menghadapi isu di mana panjang kandungan respons adalah sifar. Masalah ini sering timbul disebabkan oleh isu pengesahan sijil. Berikut ialah langkah yang boleh anda ambil untuk menyelesaikan masalah ini:
1. Kemas kini Fail Sijil cURL:
cURL menggunakan fail lapuk untuk pengesahan sijil HTTPS. Anda boleh mendapatkan versi terkini daripada:
http://curl.haxx.se/ca/cacert.pem
Simpan fail dalam direktori pada pelayan anda.
2. Konfigurasikan cURL untuk Menggunakan Fail Sijil Baharu:
Dalam konfigurasi cURL anda, tambahkan baris berikut:
curl_setopt ($curl_ch, CURLOPT_CAINFO, dirname(__FILE__)."/cacert.pem");
Ini menentukan bahawa cURL harus menggunakan fail sijil baharu untuk pengesahan.
3. Penyelesaian Alternatif:
Sebagai alternatif, anda boleh mengkonfigurasi php.ini untuk menggunakan himpunan sijil CA seluruh sistem:
curl.cainfo=/etc/ssl/certs/ca-certificates.crt
4. Elakkan Melumpuhkan Pengesahan:
Adalah penting untuk mengelakkan melumpuhkan CURLOPT_VERIFYPEER dan CURLOPT_VERIFYHOST kerana ia melindungi daripada serangan manusia-di-tengah.
5>
Untuk penyelesaian yang lebih komprehensif, pertimbangkan untuk menggunakan pakej paragonie/certainty composer, yang menguruskan sijil CA dan memastikan kesahihannya:composer require paragonie/certainty:dev-master
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Panjang Kandungan Sifar dalam Sambungan HTTPS cURL: Isu Pengesahan Sijil?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!