TLS версия php curl - PullRequest
       27

TLS версия php curl

0 голосов
/ 26 июня 2018

Мне нужна интеграция веб-сайта моей компании с внешними веб-сервисами, для которых требуются Curl и TLS 1.2.

Я включил php_curl.dll и установил curl.cainfo с правильным путем к файлу pem на php.ini.

Теперь curl работает, но только с TLS 1.0, даже если для параметра CURLOPT_SSLVERSION установлено значение 6:

  $c = curl_init();
  curl_setopt($c, CURLOPT_URL, "https://www.howsmyssl.com/a/check");
  curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($c, CURLOPT_SSLVERSION, 6);

Я работаю на сервере WAMP с Apache 2.4, PHP 5.4.16 - MSVC9 - NTS - CGI / FastCGI.

Прокрутка страницы phpinfo (), в разделе «Переменные PHP» я вижу

_SERVER["SERVER_SOFTWARE"]  Apache/2.4.10 (Win32) OpenSSL/1.0.1j mod_fcgid/2.3.9
_SERVER["SSL_VERSION_LIBRARY"]  OpenSSL/1.0.1j

пока я в разделе "openssl" вижу

OpenSSL Library Version     OpenSSL 0.9.8y 5 Feb 2013
OpenSSL Header Version      OpenSSL 0.9.8y 5 Feb 2013 

и в секции "curl":

cURL support    enabled
cURL Information    7.30.0 
SSL Yes
SSL Version     OpenSSL/0.9.8y  

Может кто-нибудь сказать мне, почему PHP использует OpenSSL 1.0.1j и Curl 0.9.8y?

Как установить Curl на TLS 1.2 без обновления PHP?

...