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

Posted

技术标签:

【中文标题】连接到 CommissionJunction 令牌时出错:[60] SSL 证书问题:无法获取本地颁发者证书【英文标题】:Error connecting to CommissionJunction Token : [60] SSL certificate problem: unable to get local issuer certificate 【发布时间】:2019-12-22 20:01:31 【问题描述】:

我已经部署了我的网站,它的所有功能都可以完美运行。这是一个电子商务网站。因此,为了进一步发展,我已经从托管服务器下载了文件,一切正常。在这个网站我添加产品如下

向系统添加新产品。(在本地机器和在线站点上工作)

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

系统规格

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

正如我之前所说,此功能在网上完美运行。但它会在本地机器上产生提到的错误

我用谷歌搜索了这个,但找不到任何解决方案。

还浏览了下面的 *** 问题

    curl: (60) SSL certificate : unable to get local issuer certificate PayPal IPN: unable to get local issuer certificate SSL errors using MailChimp's API 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

根据我在以下更改中更改的 cmets

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

【问题讨论】:

您附上本地颁发者证书了吗?您可以在 php.ini 中找到证书的路径,其中的密钥大多为 openssl.cafile = "..." 或类似的内容。 @Nipun Tharuksha 试试这个:***.com/questions/28858351/…,这对我帮助很大 @SergheiLeonenco 你能告诉我如何在 Apache 中启用 mod_ssl @vivek_23 我已将这些添加到php.ini curl.cainfo="C:/wamp/cacert.pem" openssl.cafile="C:/wamp/cacert.pem" 的行中 verifyhost 检查证书名称是否与主机名称匹配。 verifypeer 检查证书是否有效(可信 ca、完整链等)。这只是为了缩小错误范围。 【参考方案1】:

按照以下步骤在 wamp 上使用 curl

注意: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 之前删除;(如果已删除则忽略)

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

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

第 6 步:重新启动 wamp

【讨论】:

以上是关于连接到 CommissionJunction 令牌时出错:[60] SSL 证书问题:无法获取本地颁发者证书的主要内容,如果未能解决你的问题,请参考以下文章

Gtalk OAuth 令牌连接到 Gtalk 服务

无法使用 JWT 令牌连接到 Apple App Store API

如何使用 SAS 令牌从 C# 连接到 Azure BlobStorage?

有没有办法使用 oauth 令牌连接到 New-CsOnlineSession?

Spotify iOS sdk 使用现有访问令牌连接到 Spotify 远程应用程序

使用Windows服务使用TFS令牌连接到TFS服务器时出错