cURL error 58: unable to load client cert: -8018 (SEC_ERROR_UNKNOWN_PKCS11_ERROR)

原创
07/08 10:52
阅读数 868

官方文档,我是 mac 电脑(curl + openssl),生成了证书文件:

  • apiclient_cert.p12
  • apiclient_cert.pem
  • apiclient_key.pem

当我程序写好,本地测试正常,部署到服务器后:

cURL error 58: unable to load client cert: -8018 (SEC_ERROR_UNKNOWN_PKCS11_ERROR)

curl

curl -V
curl 8.1.2 libcurl/8.1.2 NSS/3.79 

重新源码编译 curl:

tar -zxvf curl-7.58.0.tar.gz
cd curl-7.58.0
./configure --with-ssl=/usr/include --without-nss
make && make install

然后

curl -V
curl 7.58.0 libcurl/7.58.0 OpenSSL/1.0.2k

重新源码编译 php

php-7.4.33.tar.bz2
tar -jxvf php-7.4.33.tar.bz2
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-config-file-scan-dir=/usr/local/php/conf.d --enable-fpm ...

phpinfo 中 curl 部分也对了

SSL Version OpenSSL/1.0.2k

执行退款也对了:

{
    "return_code": "SUCCESS",
    "return_msg": "OK",
}

大功告成!

参考:

 

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部