我正在我的网站上运行一个连接到 Facebook 的脚本,它工作正常,直到我的服务器使用有缺陷的 Openssl 版本更新 Centos 。我的问题是,在 Redhat 发布新版本之前,我一直遇到这个错误。
这是我的脚本如何实际运行:
if( !stream_socket_enable_crypto($fp, true, STREAM_CRYPTO_METHOD_TLS_CLIENT))
{
throw new Exception('stream_socket_enable_crypto failed');
}
显然现在它总是失败并出现以下错误:
PHP Warning: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:
error:100AE081:elliptic curve routines:EC_GROUP_new_by_curve_name:unknown group
error:1408D010:SSL routines:SSL3_GET_KEY_EXCHANGE:EC lib
因此,还有任何其他替代方法可以在资源上启用加密,例如 curl 或类似的东西。我怎样才能解决这个问题?