Pengenalan
Apabila cuba mengakses perkhidmatan REST melalui PHP, pengguna mungkin menghadapi ralat yang berkaitan dengan kegagalan operasi SSL dan pengesahan sijil. Artikel ini bertujuan untuk memberikan pemahaman yang menyeluruh tentang isu ini dan menawarkan penyelesaian yang berdaya maju.
Penyiasatan Ralat
Coretan kod PHP yang disediakan menunjukkan ralat yang menunjukkan kegagalan dalam operasi SSL dan ketidakupayaan untuk mengesahkan sijil pelayan. Ralat ini biasanya timbul disebabkan oleh peningkatan PHP atau konfigurasi pelayan tertentu.
Mengatasi Kegagalan Pengesahan Sijil
Untuk menyelesaikan isu pengesahan sijil, rujuk dokumentasi PHP rasmi (http ://php.net/manual/en/migration56.openssl.php). Mengikut dokumentasi, parameter tambahan mesti ditetapkan kepada palsu:
"verify_peer" => false, "verify_peer_name" => false,
Pelaksanaan Selamat
Adalah penting untuk ambil perhatian bahawa melumpuhkan pengesahan sijil membawa risiko keselamatan yang ketara. Ini mungkin membenarkan penyerang memintas dan menjejaskan permintaan menggunakan sijil yang tidak sah. Oleh itu, penyelesaian ini hanya boleh digunakan apabila implikasi keselamatan difahami sepenuhnya dan konfigurasi alternatif tidak dapat dilaksanakan.
Penyelesaian Alternatif
Sebelum menerima pakai penyelesaian yang tidak selamat, pertimbangkan untuk mengesahkan sama ada sijil yang diperlukan dipasang dan dikonfigurasikan dengan betul pada pelayan. Berunding dengan pentadbir pelayan untuk memastikan modul OpenSSL yang diperlukan didayakan dan sijil dipercayai.
Pelaksanaan
Gunakan coretan kod PHP yang diubah suai dengan tambahan parameter:
$arrContextOptions = array( "ssl" => array( "verify_peer" => false, "verify_peer_name" => false, ), ); $response = file_get_contents("https://maps.co.weber.ut.us/arcgis/rest/services/SDE_composite_locator/GeocodeServer/findAddressCandidates?Street=&SingleLine=3042+N+1050+W&outFields=*&outSR=102100&searchExtent=&f=json", false, stream_context_create($arrContextOptions)); echo $response;
Kesimpulan
Dengan menggunakan penyelesaian yang digariskan di atas, pengguna seharusnya dapat menyelesaikan kegagalan operasi SSL dan ralat pengesahan sijil apabila mengakses perkhidmatan REST melalui PHP . Walau bagaimanapun, adalah penting untuk mengutamakan keselamatan dengan memastikan konfigurasi sijil yang betul apabila boleh.
Atas ialah kandungan terperinci Mengapakah Operasi SSL PHP saya Gagal dengan Kod 1, dan Bagaimana Saya Boleh Membetulkan Isu Pengesahan Sijil?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!