PHP Conference Japan 2024

运行时配置

这些函数的行为受 php.ini 中的设置影响。

cURL 配置选项
名称 默认值 可更改 变更日志
curl.cainfo NULL INI_SYSTEM  
有关 INI_* 模式 的更多详细信息和定义,请参阅 配置设置的设置位置

以下是配置指令的简要说明。

curl.cainfo 字符串

CURLOPT_CAINFO 选项的默认值。这需要是绝对路径。

添加注释

用户贡献的注释 3 个注释

knuklus at gmail dot com
3 年前
cURL 错误 60:SSL 证书问题:无法获取本地颁发机构证书

在 Windows 上本地开发时可能会出现此问题。我使用的是 Windows 10 (x64)

为了解决此错误,我从 https://curl.haxx.se/docs/caextract.html 下载了 cacert.pem

在 php.ini 中设置以下值

curl.cainfo = "C: \ php-8.0.7 \ extras \ ssl \ cacert.pem"
ajith at pavanathara dot com
4 年前
cURL 错误 60:SSL 证书问题:无法获取本地颁发机构证书

当 curl.cainfo 变量设置不正确时,会出现此本地开发错误。

我在 PHP 版本 7.3.1 中遇到了此问题

为了解决此错误,我从 https://curl.haxx.se/docs/caextract.html 下载了 cacert.pem

在 php.ini 中设置以下路径

curl.cainfo="D:\wamp64\bin\php\php7.3.1\extras\ssl\cacert.pem"
openssl.cafile="D:\wamp64\bin\php\php7.3.1\extras\ssl\cacert.pem"

即使添加了路径并重新启动 Apache,在 phpinfo() 中,这两个路径都显示为空白。

只有通过项目的 PHP 代码设置后,错误才会消失。

以下代码对我有用:-

$guzzle = new \GuzzleHttp\Client(['verify' => 'D:\wamp64\bin\php\php7.3.1\extras\ssl\cacert.pem']);
ajith at pavanathara dot com
4 年前
我在上一条评论中编辑了错误的 php.ini 文件。

即使加载的配置路径在 WAMP 服务器的 phpinfo() 中显示为“D:\wamp64\bin\apache\apache2.4.37\bin\php.ini”,它实际上加载的是“D:\wamp64\bin\apache\apache2.4.37\bin\phpForApache.ini”

一旦我在 phpForApache.ini 中设置了这两个变量,详细信息就会显示在 phpinfo() 中,并且错误已消失,无需额外的代码行。
To Top