PHP игнорирует установку curl.cainfo в php.ini (видимо)

Я пытаюсь исправить вызов php_curl на сервере Windows (с запуском IIS), который возвращает знакомую ошибку «SSL-сертификат», убедитесь, что сертификат CA в порядке. Подробности: ошибка: 14090086: процедуры SSL: SSL3_GET_SERVER_CERTIFICATE: проверка сертификата не выполнена ».

Как описано во многих связанных с этим вопросах, я загрузил http://curl.haxx.se/ca/cacert.pem , переместил его на жесткий диск моего сервера и добавил параметр curl.cainfo в свой php.ini:

curl.cainfo = "C:\path\to\cacert.pem" 

Ничего, все равно получаю ту же ошибку. Однако указание пути в коде PHP приводит к успешному ответу!

 $ch = curl_init($url); curl_setopt($ch, CURLOPT_CAINFO, "C:\path\to\cacert.pem"); $response = curl_exec($ch); 

Это дает мне обходной путь, который я могу использовать на данный момент, но я поддерживаю большое приложение с вызовами php_curl во многих местах, поэтому было бы логичнее указать этот параметр один раз в php.ini, чтобы он применим ко всем вызовам php_curl в приложение.

Потенциальная проверка тупой ошибки:

  1. Я перезапускаю IIS между изменениями php.ini
  2. Я знаю, что редактирую правильный php.ini, потому что «echo ini_get (« smtp_port »); отражает изменения, которые я делаю для этой настройки (изменение некритической настройки только для тестирования)
  3. Я знаю, что IIS может читать файл, потому что он работает при настройке с помощью curl_setopt () (см. Выше)

Попытка взглянуть на настройку ini напрямую показывает, что PHP, похоже, ничего не знает об этом (я делаю это правильно?):

 var_dump(ini_get('curl.cainfo')); ==> bool(false) 

Любые идеи, почему PHP не будет читать настройку curl.cainfo?

Святые макароны, коллега, просто решили эту тайну для меня. Оставив его здесь, если он поможет кому-то другому.

Этот параметр curl php.ini не был добавлен до тех пор, пока PHP 5.3.7: http://www.php.net/manual/en/curl.configuration.php#ini.curl.cainfo

На конкретном тестовом сервере, с которым я работал, работала более старая версия, поэтому PHP не читал этот параметр из php.ini. Просто как тот.