php curl常见错误:SSL错误、bool(false)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php curl常见错误:SSL错误、bool(false)相关的知识,希望对你有一定的参考价值。
参考技术A排查方法: 在命令行中使用curl调用试试。
原因: 服务器所在机房无法验证SSL证书。
解决办法: 跳过SSL证书检查。
排查方法:
返回:
再排查:
返回:
HTTP/1.1 100 Continue
Connection: close
原因 :php curl接收到HTTP 100就结束了,应该继续接收HTTP 200
解决方案:
http://the-stickman.com/web-development/php-and-curl-disabling-100-continue-header/
cURL 错误 60 - SSL 证书问题 - 无法获取本地颁发者
【中文标题】cURL 错误 60 - SSL 证书问题 - 无法获取本地颁发者【英文标题】:cURL error 60 - SSL certificate problem - unable to get local issuer 【发布时间】:2017-10-17 21:15:36 【问题描述】:PHP 版本:5.6
问题:我收到一个错误:
cURL error 60: SSL certificate problem: unable to get local issuer certificate.
我尝试解决此问题的步骤:
php -r "readfile('https://symfony.com/installer');" > symfony
从https://curl.haxx.se/ca/cacert.pem 下载包含更新的证书列表的文件。
在php.ini
中设置路径
curl.cainfo =D:\xampp_tomact\php\extras\ssl\cacert.pem
openssl.cafile=D:\xampp_tomact\php\extras\ssl\cacert.pem
Apache 重启
然后我尝试了
php symfony new my_project_name
我从链接中获得了帮助
http://symfony.com/doc/current/setup.html
cURL error 60: SSL certificate: unable to get local issuer certificate
但没有一个解决方案在 xampp windows 中起作用。 请推荐
我再次尝试的步骤
d:\xampp\htdocs> php -r "readfile('http://symfony.com/installer');" > symfony
d:\xampp\htdocs\projects> php symfony
symfony new my_project_name
。
执行上述第三条命令后出错:
cURL error 60: SSL certificate problem: unable to get local issuer
在安装 symfony 时仍然没有解决这个错误的方法。
我也关注了 symfony 文档
我也尝试过的最后一个解决方案:
PHP - SSL certificate error: unable to get local issuer certificate
但它也没有工作。
xampp version 3.2.2
【问题讨论】:
为什么要在本地使用 SSL? 我想在本地安装 symfony2 什么时候出现这个错误? 嗨线圈我在运行时出错:php symfony new my_project_name 查看建议的答案并重试。 【参考方案1】:经过一番努力,我找到了为什么无法下载 symfony
-
XAMPP 版本 3.2.2 已降级 XAMPP vr 3.2.1
从https://curl.haxx.se/ca/cacert.pem下载
cacert.pem
文件。
php.ini
第 989 行放这个 curl.cainfo ="D:\xamppNew\php\extras\ssl\cacert.pem"
再次重启 apachae。
留言:symfony is being downloaded
。
在我的例子中,xampp 3.2.2 产生了问题。所以要小心 XAMPP 3.2.2。它有一些 apache 应该修复的错误。
最后我可以说这是 xampp 问题,即安装了 tomcat 的新版本。
【讨论】:
【参考方案2】:user@DESKTOP-HE0OTN5 MINGW64 /c/xampp/htdocs/symphart
$ composer diagnose
You are running Composer with SSL/TLS protection disabled.
Checking composer.json: WARNING
require.composer/package-versions-deprecated : exact version constraints (1.11.99.1) should be avoided if the package follows semantic versioning<br>
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity to packagist: OK
Checking https connectivity to packagist: FAIL
[Composer\Downloader\TransportException] curl error 60 while downloading https://repo.packagist.org/packages.json: SSL certificate problem: unable to get local issuer certificate
Composer is configured to disable SSL/TLS protection. This will leave remote HTTPS requests vulnerable to Man-In-The-Middle attacks.
Checking github.com rate limit: FAIL
[Composer\Downloader\TransportException] curl error 60 while downloading https://api.github.com/rate_limit: SSL certificate problem: unable to get local issuer certificate
Checking disk free space: OK
Checking pubkeys:
Tags Public Key Fingerprint: 57815BA2 7E54DC31 7ECC7CC5 573090D0 87719BA6 8F3BB723 4E5D42D0 84A14642
Dev Public Key Fingerprint: 4AC45767 E5EC2265 2F0C1167 CBBB8A2B 0C708369 153E328C AD90147D AFE50952
OK
Checking composer version: Warning: Accessing getcomposer.org over http which is an insecure protocol.
OK
Composer version: 2.0.12
PHP version: 7.4.16
PHP binary path: C:\Program Files\php-7.4.16\php.exe
OpenSSL version: OpenSSL 1.1.1i 8 Dec 2020
cURL version: 7.70.0 libz 1.2.11 ssl OpenSSL/1.1.1i
zip: extension present, unzip present<br>
如果您遇到此问题,我可以帮助您....
您只需要从 c:\xampp\htdocs\symphart(yourProjectFile) 的项目文件的 composer.json 文件中删除一些代码行
"config":
"optimize-autoloader": true,
"preferred-install":
"*": "dist"
,
"sort-packages": true,
"disable-tls": true,
"secure-http": false
您只需从您的 composer.json 文件中删除这两行代码 你会发现这个结果
user@DESKTOP-HE0OTN5 MINGW64 /c/xampp/htdocs/symphart
$ composer diagnose
Checking composer.json: WARNING
require.composer/package-versions-deprecated : exact version constraints (1.11.99.1) should be avoided if the package follows semantic versioning
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity to packagist: OK
Checking https connectivity to packagist: OK
Checking github.com rate limit: OK
Checking disk free space: OK
Checking pubkeys:
Tags Public Key Fingerprint: 57815BA2 7E54DC31 7ECC7CC5 573090D0 87719BA6 8F3BB723 4E5D42D0 84A14642
Dev Public Key Fingerprint: 4AC45767 E5EC2265 2F0C1167 CBBB8A2B 0C708369 153E328C AD90147D AFE50952
OK
Checking composer version: OK
Composer version: 2.0.12
PHP version: 7.4.16
PHP binary path: C:\Program Files\php-7.4.16\php.exe
OpenSSL version: OpenSSL 1.1.1i 8 Dec 2020
cURL version: 7.70.0 libz 1.2.11 ssl OpenSSL/1.1.1i
zip: extension present, unzip present
如果你没问题,你可以试试这个
【讨论】:
以上是关于php curl常见错误:SSL错误、bool(false)的主要内容,如果未能解决你的问题,请参考以下文章
cURL 错误 60 - SSL 证书问题 - 无法获取本地颁发者
PayPal TLS 测试 URL - PHP curl SSL 协议错误
Paypal 沙箱 CURL 执行 - “SSL 连接错误”