Rumah >pembangunan bahagian belakang >tutorial php >Mengapakah panggilan `file_get_contents()` saya gagal dengan 'operasi SSL gagal dengan kod 1,' dan bagaimana saya boleh membetulkannya?
Operasi SSL Gagal dengan Kod 1: Memahami dan Menangani
Apabila menggunakan file_get_contents() untuk mengakses tapak web selamat, ralat seperti "operasi SSL gagal dengan kod 1" boleh timbul. Ralat ini menunjukkan isu dengan pengesahan sijil atau konfigurasi OpenSSL.
Dalam senario khusus ini, masalah berpunca daripada langkah keselamatan SSL PHP 5.6 yang dipertingkatkan. Untuk menyelesaikan masalah ini, adalah perlu untuk melumpuhkan pengesahan sijil dengan menetapkan verify_peer dan verify_peer_name kepada palsu dalam pilihan konteks permintaan:
$arrContextOptions = array( "ssl" => array( "verify_peer" => false, "verify_peer_name" => false, ), ); $response = file_get_contents($url, false, stream_context_create($arrContextOptions));
Awas: Adalah penting untuk ambil perhatian bahawa melumpuhkan pengesahan sijil boleh mempunyai implikasi keselamatan yang serius, kerana ia membuka kemungkinan serangan man-in-the-middle (MITM). Hanya gunakan penyelesaian ini jika anda memahami sepenuhnya potensi risiko dan tidak mempunyai pilihan lain yang berdaya maju.
Dalam kes yang diterangkan, melumpuhkan pengesahan sijil telah menyelesaikan isu, membolehkan permintaan itu berjaya. Walau bagaimanapun, sentiasa disyorkan untuk menyiasat punca kegagalan SSL dan menanganinya dengan betul untuk memastikan komunikasi selamat.
Atas ialah kandungan terperinci Mengapakah panggilan `file_get_contents()` saya gagal dengan 'operasi SSL gagal dengan kod 1,' dan bagaimana saya boleh membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!