Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menyelesaikan Ralat \"Masalah dengan SSL CA Cert\" dalam PHP CURL Walaupun Melumpuhkan Pengesahan?

Bagaimana untuk Menyelesaikan Ralat \"Masalah dengan SSL CA Cert\" dalam PHP CURL Walaupun Melumpuhkan Pengesahan?

DDD
DDDasal
2024-10-20 07:20:02950semak imbas

How to Resolve

Menyelesaikan masalah Diabaikan CURLOPT_SSL_VERIFYPEER dalam PHP CURL

Masalah:

Pengguna yang menghadapi masalah Permintaan HTTPS menggunakan CURL menimbulkan ralat "Masalah dengan sijil SSL CA", walaupun menetapkan kedua-dua CURLOPT_SSL_VERIFYPEER dan CURLOPT_SSL_VERIFYHOST kepada palsu.

Punca dan Penyelesaian:

Untuk berjaya mengesahkan hos atau sijil rakan sebaya menggunakan CURL, anda perlu menentukan sijil ganti dengan CURLOPT_CAINFO atau direktori sijil dengan CURLOPT_CAPATH.

Selain itu:

  • CURLOPT_SSL_VERIFYHOME

      Tetapkan kepada 1 untuk menyemak kewujudan nama biasa dalam sijil rakan setara SSL.
    • Tetapkan kepada 2 untuk menyemak kewujudan nama biasa dan padankannya dengan nama hos yang disediakan.

Kod Cadangan:

Untuk melumpuhkan pengesahan untuk hos dan rakan sebaya:

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
Untuk mendayakan pengesahan dan nyatakan sijil CA fail:

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_CAINFO, "/path/to/cacert.pem");

Nota Tambahan:

    Pastikan fail sijil CA sah dan boleh diakses oleh pelayan.
  • The tetapan curl.cainfo dalam php.ini juga boleh digunakan untuk menentukan fail sijil CA.
  • Namakan semula /etc/pki/nssdb kepada /etc/pki/nssdb.old untuk menetapkan semula pihak berkuasa sijil.

Kemas kini:

Selepas mengemas kini perpustakaan dan memulakan semula sistem, isu itu mungkin selesai dengan sendirinya.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat \"Masalah dengan SSL CA Cert\" dalam PHP CURL Walaupun Melumpuhkan Pengesahan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn