C’est la première fois que j’ai problème de certificat lors d’un appel cURL alors voici le détail du contexte d’execution :
- Rocky Linux 9.3
- curl-7.76.1-26.el9_3.2.0.1.x86_64
- FrankenPHP v1.0.2 PHP 8.3.1 Caddy v2.7.6 h1:w0NymbG2m9PcvKWsrXO6EEkY9Ru4FJK8uQbYcev1p3A=
- Utilisation de Laravel Octane
Et donc j’obtiens cette erreur uniquement quand j’execute un appel d’une URL en https via cURL. Si j’utilise swoole (dans octane) ou bien un php-fpm. Aucun problème.
Je vais surement voir pour remonter l’information chez Frankenphp pour ce problème mais en attendant j’ai trouvé une solution.
Rendez-vous dans /etc/ssl/certs et faites un lien symbolique de ca-bundle.crt en ca-certificates.crt
cd /etc/ssl/certs
ln -s ca-bundle.crt ca-certificates.crt
Bonus
si vous avez toujours une erreur de certificat, c’est peut-être parce votre base n’est pas à jour. Pour corriger cela :
Rendez-vous dans /etc/pki/ca-trust/source/anchors, pour ensuite télécharger la dernière version de la base de certificats et une fois fait lancer la commande qui va extraire cette base et la mettre à jour dans le système.
cd /etc/pki/ca-trust/source/anchors
wget https://curl.se/ca/cacert.pem
update-ca-trust extract