Maison  >  Article  >  développement back-end  >  Comment corriger l'erreur « Problème avec le certificat SSL CA » lors de l'utilisation de CURL avec HTTPS en PHP ?

Comment corriger l'erreur « Problème avec le certificat SSL CA » lors de l'utilisation de CURL avec HTTPS en PHP ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-20 07:18:29146parcourir

How to Fix the

Ignorer la vérification du certificat SSL dans PHP CURL : résolution de l'erreur « Problème avec le certificat SSL CA »

Malgré une configuration minutieuse, vous pouvez rencontrer un « Problème avec le certificat SSL CA cert (chemin ? droits d'accès ?)" erreur lors de l'utilisation de CURL avec HTTPS en PHP. Ce problème peut survenir après la mise à jour des bibliothèques curl.

1. Désactiver la vérification pour l'hôte et le homologue :

<code class="php">curl_setopt($cHandler, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);</code>

2. Activez CURLOPT_SSL_VERIFYPEER et définissez le certificat CA :

<code class="php">curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");</code>

3. Utilisez le certificat Bundle CA pour le serveur :

De même, vous pouvez essayer le bundle positiveSSL.ca fourni par le serveur.

4. Mettre à jour les paramètres PHP INI :

Configurez curl.cainfo dans php.ini pour pointer vers le fichier de certificat CA.

5. Renommer la base de données NSS :

Renommer temporairement la base de données NSS pour exclure les certificats à l'échelle du système.

6. Mettre à jour les bibliothèques et redémarrer :

Le redémarrage de votre système après la mise à jour des bibliothèques peut résoudre le problème.

7. Désactivez la vérification à l'aide de CURLOPT_SSL_VERIFYHOST et CURLOPT_SSL_VERIFYPEER :
Recommandé lorsque la vérification n'est pas nécessaire.

<code class="php">curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);</code>

Si aucune de ces solutions ne fonctionne, envisagez de passer aux dernières versions de la bibliothèque et redémarrer votre système. Vous pouvez également consulter votre fournisseur d'hébergement ou l'administrateur du serveur pour déterminer s'il existe des problèmes de certificat spécifiques affectant votre environnement.

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