连接到CommissionJunction令牌时出错:[60] SSL证书问题:无法获取本地发行者证书

时间:2019-08-16 13:32:57

标签: php laravel ssl curl

我已经部署了网站,并且该网站可以与所有功能完美配合。这是一个电子商务网站。因此,为了进行进一步的开发,我从托管服务器下载了文件,并且一切正常。在这个网站上,我添加了以下产品

  • 向系统添加新产品。(在本地计算机和在线站点上均可使用)

  • 然后将此相关产品分配到系统中存在的某个列表中。(在在线站点上运行良好,但在本地服务器上生成以下错误。)

    < / li>
  

连接到CommissionJunction令牌时出错:[60] SSL证书问题:无法获取本地发行者证书

系统规格

  • 框架-Laravel 5.3
  • 本地计算机操作系统-Windows 10
  • 本地计算机网络服务-WAMP
  • php版本-7.1.9

正如我之前说的,此功能可以在网上完美运行。但是它会在本地计算机上生成提到的错误

我已经对此进行了搜索,无法找到任何解决方案。

还已经浏览了下面的stackoverflow问题

  1. curl: (60) SSL certificate : unable to get local issuer certificate
  2. PayPal IPN: unable to get local issuer certificate
  3. SSL errors using MailChimp's API
  4. How do you add a certificate authority (CA) to Ubuntu?

也经历了这个cURL on Windows

Laravel显示此行中发生了错误。但是我认为没有编码错误。

 $body = curl_exec($ch);
    $errno = curl_errno($ch);
    if ($errno !== 0) {
        throw new Exception(sprintf("Error connecting to CommissionJunction Token : [%s] %s", $errno, curl_error($ch)), $errno);
    }

经历了所有这些之后,仍然没有运气。因此,对此的任何帮助将受到热烈欢迎。谢谢。

更新01

根据我在下面的更改中更改的评论

  • 通过CA certificates extracted from Mozilla 下载了最新的证书捆绑包
  • 然后将证书捆绑包移至c:\wamp64\
  • 如下所示在Apache中启用了mod_ssl我不确定该方法是否可行
  • 单击WAMP图标-> Apache 2.4.27-> Apache模块-> 然后选择ssl_module
  • 通过删除php_openssl.dll来启用php.ini中的;
  • 将以下代码添加到php.ini
    • curl.cainfo="C:/wamp64/cacert.pem"
    • openssl.cafile="C:/wamp64/cacert.pem"
  • 重新开始发球

1 个答案:

答案 0 :(得分:2)

请按照以下步骤在沼泽上进行卷曲

注意:wamp服务器具有多个php版本,因此需要在所有php.in文件中进行更改

步骤1:下载certificate捆绑软件。复制到C:/wamp64/

步骤2:通过单击通知栏中的wamp图标打开php.ini,并通过目录“ E:\ wamp \ bin \ php \ php7.1.22”打开特定于版本的php.ini文件。

步骤3:;之前删除;extension=php_openssl.dll(忽略是否已删除)

第4步:在php.ini中找到[curl],然后在curl.cainfo="C:/wamp64/cacert.pem"下添加

步骤5::在php.ini中找到[openssl],然后在openssl.cafile="E:\wamp\cacert.pem"下添加

步骤6:重新启动沼泽