Heim >Backend-Entwicklung >PHP-Tutorial >Wie behebe ich SSL/TLS-Handshake-Fehler bei der Verwendung von cURL?
Fehlerbehebung bei SSL/TLS-Handshake-Fehlern mit cURL
Beim Versuch, cURL-Anfragen über HTTPS auszuführen, wird Benutzern möglicherweise eine Fehlermeldung angezeigt, die auf ein Problem hinweist Tritt irgendwo im SSL/TLS-Handshake auf. Dieses Problem kann auch dann auftreten, wenn erfolgreich über HTTP auf dieselbe Ressource zugegriffen wird.
Lösung: Bereitstellung von Stammzertifikaten
Um diesen Fehler zu beheben, erfordert cURL expliziten Zugriff auf ein Cacert .pem-Datei, die die Stammzertifikate enthält, die zur Überprüfung von SSL-Zertifikaten erforderlich sind. Standardmäßig schließt cURL diese Zertifikate nicht in seine Installation ein.
Um den Speicherort der cacert.pem-Datei anzugeben, verwenden Sie den folgenden Code:
curl_setopt($ch, CURLOPT_CAINFO, '/path/to/cert/file/cacert.pem');
Abrufen des cacert .pem-Datei
Die cacert.pem-Datei kann von der folgenden URL heruntergeladen werden: http://curl.haxx.se/docs/caextract.html. Platzieren Sie die Datei nach dem Herunterladen am angegebenen Speicherort.
Verifiziertes Zertifikat
Durch die Bereitstellung der cacert.pem-Datei kann cURL die Authentizität des von präsentierten SSL-Zertifikats überprüfen den Remote-Server, wodurch der Fehler „Irgendwo beim SSL/TLS-Handshake ist ein Problem aufgetreten“ behoben wird.
Das obige ist der detaillierte Inhalt vonWie behebe ich SSL/TLS-Handshake-Fehler bei der Verwendung von cURL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!