Quand votre site contacte un autre serveur en https, cURL vérifie que son certificat est valide et signé par une autorité reconnue. L’erreur 60 signale l’échec de cette vérification. Soit le certificat distant pose problème (expiré, incomplet, auto-signé), soit votre serveur ne dispose pas d’une liste à jour des autorités de certification.
Pourquoi cette erreur apparaît
- Le certificat du service contacté a expiré, ou son certificat intermédiaire n’est pas installé.
- La liste des autorités de certification est ancienne : WordPress pas à jour, ou système du serveur jamais mis à jour.
- Une extension utilise sa propre bibliothèque réseau avec un fichier de certificats périmé.
- En développement local (MAMP, WAMP, Local), PHP ne sait pas où trouver les certificats racine.
- Un antivirus ou un proxy d’entreprise intercepte les connexions https et présente son propre certificat.
Comment corriger le problème
Mettre à jour WordPress et l’extension
WordPress embarque sa propre liste d’autorités de certification, dans le fichier wp-includes/certificates/ca-bundle.crt, actualisée au fil des versions. Mettez à jour WordPress et l’extension concernée, puis réessayez.
Contrôler le certificat du service distant
Repérez l’adresse appelée dans le message complet et testez-la avec un outil d’analyse SSL en ligne comme SSL Labs. Un certificat expiré ou une chaîne incomplète se corrige chez le propriétaire de ce service, pas sur votre site.
Mettre à jour les certificats du serveur
Sur un hébergement mutualisé, signalez l’erreur au support : la liste des autorités du système est à sa charge. Sur un VPS Debian ou Ubuntu, mettez à jour le paquet ca-certificates.
sudo apt update
sudo apt install --only-upgrade ca-certificates
Indiquer à PHP où trouver les certificats
En environnement local, ou sur un serveur mal configuré, téléchargez le fichier cacert.pem publié par le projet cURL, indiquez son chemin dans php.ini, puis redémarrez PHP.
curl.cainfo = "/chemin/vers/cacert.pem"
openssl.cafile = "/chemin/vers/cacert.pem"
Ne désactivez jamais la vérification SSL (option sslverify à false) pour faire taire l’erreur : vos échanges avec les services extérieurs pourraient alors être interceptés.
Un autre message d'erreur ? Collez-le dans le décodeur : il le reconnaît et vous oriente vers la bonne fiche.
Ouvrir le décodeur