Facebook に接続するスクリプトを自分のサイトで実行しています。サーバーが Centos をバグのあるバージョンの Opensslで更新するまでは問題なく動作していました。私の問題は、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 などのリソースで暗号化を有効にする他の方法があります。どうすればこれを修正できますか?