file_get_contents 関数でウェブページを読み込みするとき、次のエラーが出てしまいました。
Failed to enable crypto
他のウェブサイトの読み込みではそのエラーは出ないのですが、特定のウェブサイトを読み込む時だけエラーが発生します。
色々試してみると、原因はエラーが発生するウェブサイトに使用している SSL/TLS のバージョンが 1.1 で古いためでした。
そこで、file_get_contents に渡すコンテキストに SSL の値を追加しました。
[
'http' => [
'method' => 'GET'
],
'ssl' => [
'ciphers' => 'TLSv1',
'crypto_method' => STREAM_CRYPTO_METHOD_TLS_CLIENT
]
]
これで、TLS 1.1 を使った読み込みができるようになりました。