У меня есть старый клиент с сервером с PHP 5.3.3 с использованием curl с версией SSL NSS/3.12.7.0. У нас возникли проблемы с отправкой данных в PayWay. Они сообщают, что данные отправляются через TLS1.0.
Я проверил сервера с помощью
php -r '$ch = curl_init("https://www.howsmyssl.com/a/check"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $data = curl_exec($ch); curl_close($ch); $json = json_decode($data); echo $json->tls_version;'
И это возвращение TLS1.0.
Все решения должны были перестроить curl и php. Im о процессе восстановления завитка. Получили некоторые ошибки, и я должен сначала обновить сертификаты ca.
ли yum update ca-certificates
При обновлении, я вижу, что nss
обновляется.
После обновления ca-сертификатов я снова проверил версию tls и теперь использует TLS1.2!
Но как это сделать? Я нашел другое сообщение об этой проблеме на этом сайте: http://stackoverflow.com/questions/16699868/how-can-i-ensure-that-curl-uses-openssl-and-not-nss Так что это правильный путь для моей конфигурации :? './configure --with-ssl =/usr/include --without-nss' К сожалению,« ./configure », похоже, не работает. Я получаю следующую ошибку: «./configure - нет такого файла или каталога». Я проверил, установлено ли openssl через: rpm -qa | grep -i openssl Ответ был: «openssl-1.0.1e-42.el6.x86_64» Так что же мне нужно использовать openssl с curl? – HHGK