2016-11-21 1 views
0

Le code fonctionne correctement sur la boîte vagabonde Ubuntu, mais sur les MacOs locaux, il ne charge pas les sertificates en disanterreur cURL 58: SSL: Impossible de charger le certificat "..." et sa clé privée: OSStatus -25299 sur Mac

cURL error 58: SSL: Can't load the certificate "..." and its private key: OSStatus -25299 

J'ai recherché que Mac a un point de soutien de l'API native OS X au lieu d'OpenSSL.

et je dois convertir un + pem cert à pkcs12 comme ça.

openssl pkcs12 -export -in ./client.crt -inkey ./client.pem -out client.p12 

Mais cela ne fonctionne pas pour moi parce que mon serveur PHP est sur Ubuntu et je ne veux pas freiner ce qui fonctionne. Ma tâche est de le faire fonctionner sur Mac. Je préfèrerais installer une boucle avec support OpenSl. J'ai essayé ceci:

$ brew uninstall curl 
$ brew install curl --with-openssl 
$ brew link curl --force 
$ curl --version 

Mais cela n'a pas résolu le problème.

S'il vous plaît dites-moi ce que j'ai fait mal.

Merci.

+0

Relatif bug https://github.com/curl/curl/issues/283 – user2707671

Répondre

1

L'installation de la boucle via l'infusion et avec le support OpenSl comme indiqué dans la question est la bonne approche. Cependant, vous devez appeler explicitement de son répertoire d'installation /usr/local/opt/curl/bin/curl -v -k --key.. comme brew lien wont dans/usr/local comme indiqué lors de l'installation

This formula is keg-only, which means it was not symlinked into /usr/local, 
because macOS already provides this software and installing another version in 
parallel can cause all kinds of trouble. 

If you need to have this software first in your PATH run: 
    echo 'export PATH="/usr/local/opt/curl/bin:$PATH"' >> ~/.zshrc 

For compilers to find this software you may need to set: 
    LDFLAGS: -L/usr/local/opt/curl/lib 
    CPPFLAGS: -I/usr/local/opt/curl/include 
For pkg-config to find this software you may need to set: 
    PKG_CONFIG_PATH: /usr/local/opt/curl/lib/pkgconfig