PHP 似乎忽略了我的 php.ini 中的 curl.info

PHP 似乎忽略了我的 php.ini 中的 curl.info

我在 StackOverflow 上发布了同样的问题,但有人告诉我应该在这里提问:https://stackoverflow.com/questions/61894424/php-seems-to-ignore-my-curl-info-of-my-php-ini

我在 Windows 上使用 WAMP 和多个版本的 PHP。我目前使用的是 PHP 7.3.12。在仔细按照每个步骤将文件安装cacert.pem到我的 WAMP 文件夹中后,我的 PHP 似乎看不到它。以下是我安装它的步骤:

  • cacert.pemhttps://curl.haxx.se/docs/caextract.html
  • 我将此文件移至我extras\ssl的 PHP 文件夹 ( C:\dev\wssp\wamp\bin\php\php7.3.12\extras\ssl\cacert.pem)
  • 我通过左键单击 WAMP 图标 > PHP > php.ini,将此绝对路径写入php.iniWAMP 文件中curl.cainfo(并删除了字符)。此文件位于此处: 。;C:\dev\wssp\wamp\bin\apache\apache2.4.41\bin\php.ini
  • 然后我重新启动我的 WAMP 服务,它实际上将此文件复制到php.ini我当前正在使用的 PHP 版本的文件上:C:\dev\wssp\wamp\bin\php\php7.3.12\phpForApache.ini

即使完成这些步骤后,PHP 似乎仍然看不到我的 cacert 文件,因为当我尝试时,dd(ini_get('curl.cainfo'))得到的结果是:https://i.stack.imgur.com/FOYAW.png(抱歉,没有 10 个回复就无法发布图片)

为了确保万无一失,我查看了phpinfo()curl 部分:https://i.stack.imgur.com/g3EQU.png(抱歉,没有 10 个回复就无法发布图片)

但是当我php.ini用这个命令转储我的文件时dd(file_get_contents(php_ini_loaded_file()));,我可以清楚地看到我的curl.cainfo路径:https://i.stack.imgur.com/5bR1B.png(抱歉,没有 10 个回复就无法发布图片)

我不确定我做错了什么,但当我从 Laravel 项目使用 GuzzleHTTP 时,我尝试为库提供一个绝对路径,$client = new \GuzzleHttp\Client(['verify' => 'C:\dev\wssp\wamp\bin\php\php7.3.12\extras\ssl\cacert.pem']);并且成功了。我仍然希望能够将其与php.ini文件一起用于环境目的。

相关内容