PHP cURL错误代码60

Cia*_*ran 75 php curl

虽然尝试在Windows上设置php环境(使用wamp)来使用Amazon PHP SDK,但当我尝试运行示例测试时,我收到以下错误:

Fatal error: Uncaught exception 'cURL_Exception' with message 'cURL resource: Resource id #10; cURL error: SSL certificate problem: unable to get local issuer certificate (cURL error code 60). See http://curl.haxx.se/libcurl/c/libcurl-errors.html for an explanation of error codes.' in C:\wamp\www\AWSSDKforPHP\lib\requestcore\requestcore.class.php on line 848
Run Code Online (Sandbox Code Playgroud)

我已经将以下行添加到我的php.ini中

curl.cainfo = C:\Windows\ca-bundle.crt
Run Code Online (Sandbox Code Playgroud)

这是我使用此VBS脚本VBS脚本创建的证书的位置

我也重启了我的WAMP服务.

PHP索引卷曲引用

Hüs*_*BAL 212

使用此证书根证书包:

https://curl.haxx.se/ca/cacert.pem

将此证书包复制到磁盘上.并使用它php.ini

curl.cainfo = "path_to_cert\cacert.pem"
Run Code Online (Sandbox Code Playgroud)

  • 如果这不能解决问题?我设置`curl_setopt($ ch,CURLOPT_CAINFO,ini_get('curl.cainfo'));`和_php.ini_` [cURL] curl.cainfo = C:\ dev\xampp\php\cacert.pem`.文件在那里,但我仍然得到错误60.有什么我想念的? (9认同)
  • @Overflowh有两种类型的php.ini:一种用于php-cli,另一种用于php-web(apache,nginx等)。您需要为网站一设置`curl.cainfo =“ path_to_cert \ cacert.pem”。另一方面,如果您在php信息视图中看到`curl.cainfo`是真实的,那可能是权限问题。 (3认同)

aim*_*mme 26

我通过修改php.ini文件来修复此问题C:\wamp\bin\apache\apache2.4.9\bin\

curl.cainfo = "C:/wamp/bin/php/php5.5.12/cacert.pem"
Run Code Online (Sandbox Code Playgroud)

首先,我试图通过修改php.ini文件,C:\wamp\bin\php\php5.5.12\它没有工作.

希望这可以帮助那些正在寻找php.ini修改权的人


pgk*_*r76 13

@Overflowh我也试过上面的答案,但没有运气.我将php版本从5.3.24更改为5.5.8,因为此设置仅适用于php 5.3.7及更高版本.然后我发现这个http://flwebsites.biz/posts/how-fix-curl-error-60-ssl-issue我从那里下载了cacert.pem并替换了我从curl.hxxx.se下载/制作的那个以上链接,一切都开始工作.我试图让paypal沙盒IPN验证.很高兴在.pem交换之后说完所有可以使用php.ini中的curl.cainfo设置,但仍然不在5.3.24中.

  • 哈哈我简直不敢相信!我拥有FLWebsites.biz,我完全没有意识到我被提到这个帖子...我写了那个博客! (4认同)
  • 对不起,我把我的网站关了.直接转到源:https://curl.haxx.se/docs/caextract.html (3认同)
  • 我面临同样的问题,只需下载上面提到的.pem文件格式即可解决.谢谢 (2认同)

小智 13

php --ini
Run Code Online (Sandbox Code Playgroud)

这将告诉您正在加载哪个php.ini文件,因此您知道要修改哪个.我浪费了很多时间来更改错误的php.ini文件,因为我安装了WAMP和XAMPP.

此外,不要忘记在更改php.ini后重新启动WAMP服务器(或任何您使用的).


小智 8

@HüseyinBABAL

我收到上述证书的错误,但我尝试这个证书及其工作.

https://gist.github.com/VersatilityWerks/5719158/download


Qua*_*Tri 5

首先,我们需要下载这个证书根证书包:

https://curl.haxx.se/ca/cacert.pem

将此文件移动到某个位置,例如 Wamp/Xampp 文件夹中的 PHP 文件夹。

然后编辑你的“php.ini”:

curl.cainfo ="C:/path/to/your/cacert.pem"

和

openssl.cafile="C:/path/to/your/cacert.pem"

重要的:

确保您直接通过窗口资源管理器打开“php.ini”文件。(在我的例子中:“C:\DevPrograms\wamp64\bin\php\php5.6.25\php.ini”)。

不要使用系统托盘中 Wamp/Xampp 图标菜单中“php.ini”的快捷方式。在我遇到的某些情况下,此快捷方式不起作用。

保存“php.ini”后,您无需在 Wamp 图标中“重新启动所有服务”或关闭/重新打开 CMD。

尝试使用“ var_dump(openssl_get_cert_locations()); ”并查看行: ["ini_cafile"]=> string(40) "C:/path/to/your/cacert.pem"

完毕。