Erreur : "Un problème est survenu quelque part lors de la prise de contact SSL/TLS" lors de l'utilisation de cURL
Dans le domaine de cURL, les utilisateurs peuvent rencontrer un message d'erreur énigmatique : "Un problème s'est produit quelque part lors de la négociation SSL/TLS." Ce problème déroutant survient lorsque cURL rencontre des difficultés pour établir une connexion sécurisée via HTTPS.
Le problème
Le contexte fourni révèle le dilemme d'un développeur où cURL gère parfaitement les requêtes HTTP mais échoue lorsque vous rencontrez HTTPS, même lorsque vous ciblez la même ressource en utilisant des protocoles différents. La réponse d'erreur de cURL, code 35, indique un problème dans la négociation SSL/TLS.
Tentatives infructueuses
Le développeur a minutieusement exploré les solutions potentielles, notamment la désactivation de la vérification du certificat SSL. (CURLOPT_SSL_VERIFYPEER) et tentative de téléchargement et de configuration d'un certificat d'autorité de certification (CA) (CURLOPT_CAINFO). Cependant, ces efforts se sont révélés vains.
La solution
Après avoir approfondi le problème, notre expert découvre que cURL ne dispose pas de certificats racine intégrés. Pour remédier à ce problème, le développeur doit explicitement diriger cURL vers un fichier de certificat CA de confiance (cacert.pem). En spécifiant le chemin d'accès à ce fichier à l'aide de CURLOPT_CAINFO, cURL peut vérifier l'authenticité du certificat SSL fourni par le serveur distant.
Le fichier cacert.pem peut être acquis auprès d'une source fiable, telle que la documentation officielle de cURL. (http://curl.haxx.se/docs/caextract.html). En incorporant ce certificat, cURL peut établir une connexion sécurisée et récupérer la ressource HTTPS demandée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!