Maison >développement back-end >tutoriel php >Comment résoudre l'erreur « SSL3_GET_SERVER_CERTIFICATE : échec de la vérification du certificat » en PHP ?

Comment résoudre l'erreur « SSL3_GET_SERVER_CERTIFICATE : échec de la vérification du certificat » en PHP ?

DDD
DDDoriginal
2025-01-01 04:38:09991parcourir

How to Resolve the

Résolution de l'erreur « SSL3_GET_SERVER_CERTIFICATE : échec de la vérification du certificat » pour les requêtes HTTPS

Dans le domaine du développement Web, l'utilisation de HTTPS pour une communication sécurisée est primordiale. Cependant, des erreurs peuvent parfois survenir lors des requêtes HTTPS, telles que le fameux « SSL3_GET_SERVER_CERTIFICATE : échec de la vérification du certificat, CA est OK ».

Naviguer dans l'erreur

Quand Une erreur se produit, elle indique généralement une différence entre le certificat du serveur attendu et celui présenté par le serveur. Bien que l'autorité de certification soit considérée comme valide, les problèmes de validation du certificat persistent.

Résolution via la configuration PHP

Pour les applications PHP, une solution simple à cette erreur réside lors de la configuration du paramètre curl.cainfo dans php.ini. Ce paramètre spécifie le chemin d'accès à un fichier contenant des certificats racines approuvés. Par défaut, PHP utilise ses propres certificats groupés, qui peuvent ne pas être mis à jour régulièrement.

Pour résoudre l'erreur :

  1. Téléchargez le bundle ca-certificates depuis https://curl. se/ca/cacert.pem.
  2. Enregistrez le fichier téléchargé à l'emplacement souhaité, par exemple, /path/to/cacert.pem.
  3. Ouvrez /etc/php.ini, localisez la section [curl] et ajoutez la ligne suivante :
curl.cainfo = /path/to/cacert.pem
  1. Enregistrez et redémarrez le service PHP FPM.

Demande individuelle Ajustements

Si les ajustements de configuration PHP ne sont pas réalisables, des requêtes cURL spécifiques peuvent être configurées pour utiliser le certificat CA personnalisé en définissant l'option CURLOPT_CAINFO :

curl_setopt($ch, CURLOPT_CAINFO, '/path/to/cacert.pem');

Considérations supplémentaires

Assurez-vous que le certificat de serveur présenté par le point de terminaison HTTPS est valide et signé par une autorité de certification de confiance. Si le problème persiste, envisagez de vérifier les paramètres du pare-feu ou de vérifier les certificats côté serveur.

Conclusion

En suivant ces étapes, vous pouvez résoudre efficacement le problème « SSL3_GET_SERVER_CERTIFICATE : vérification du certificat échoué, CA is OK" et assurez une communication HTTPS fluide dans vos applications PHP.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn