我正在使用 prestapaypalplugin 表单http://www.symfony-project.org/plugins/prestaPaypalPlugin。我已经准备好在 redme.txt 文件中给出的动作文件。但我收到此错误“curl_exec 错误 60 Peer 的证书颁发者无法识别”。直接付款和快速结帐两种方式。我尝试了网站支付,它工作正常。
谢谢。
我正在使用 prestapaypalplugin 表单http://www.symfony-project.org/plugins/prestaPaypalPlugin。我已经准备好在 redme.txt 文件中给出的动作文件。但我收到此错误“curl_exec 错误 60 Peer 的证书颁发者无法识别”。直接付款和快速结帐两种方式。我尝试了网站支付,它工作正常。
谢谢。
这似乎是一个 CA 证书问题。可能这篇文章对你有帮助:
或者,您可以在代码中执行此操作。下载cacert.pem,直接在代码中设置路径即可。像这样的东西:
$caller =& PayPal::getCallerServices($profile);
$caller->setOpt('curl', CURLOPT_CAINFO, '/PATH/TO/cacert.pem');
请注意,您无法通过更新 php.ini 中的路径来修复,因为presta 在PROJECTDIR /plugins/prestaPaypalPlugin/sdk/lib/中使用PROJECTDIR /plugins/prestaPaypalPlugin/sdk/lib/PayPal/cert/api_cert_chain.crt覆盖了 php.ini 默认值贝宝/CallerServices.php:
function CallerServices($profile)
{
...
$this->setOpt('curl', CURLOPT_CAINFO, dirname(__FILE__) . '/cert/api_cert_chain.crt');