<分区>
我正在尝试使用 PHP 中的 curl 连接到 Pronto Cycle Share (使用 PHP 5.6.2)。该站点在浏览器和命令行 curl 中运行。
根据 SSL Labs , 它只接受 TLS 1.2。
在 PHP 中,使用 CURL(版本 7.28.1)PHP 无法协商并给我 Curl error: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure
使用file_get_contents,代码:
$ctx = stream_context_create([
'ssl' => [
'crypto_method' => STREAM_CRYPTO_METHOD_TLS_CLIENT
],
]);
$html = file_get_contents($url, false, $ctx);
返回:
Message: file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
print_r(OPENSSL_VERSION_TEXT)
说 OpenSSL 0.9.8r 2011 年 2 月 8 日,所以这已经相当老了。我在 Mac 上使用 MAMP PRO。
有什么方法可以使用简单的 PHP 方法连接到此服务器吗?