Reply To: 8.6.5-1でOpenSSL Error

TOP Forums インストール(Installing KUSANAGI) 8.6.5-1でOpenSSL Error Reply To: 8.6.5-1でOpenSSL Error

#1002
collne
Participant

    非常に時間が経ってしまって申し訳ございません。
    あれからいろいろ情報を収集しまして、なんとなく状況が見えてきたので共有したいと思います。

    まず下記のエラーが出る原因は、レスポンスサーバー(サービス元)が適切にclose_notifyを返していないために起こるものだという事がわかりました。
    fgets(): SSL operation failed with code 1

    サービス元に情報を共有しようと思ったのですが、弊社が取引している複数の会社で同様の症状が出たので、レスポンスサーバーの改善を求める前にこちらでなんとかできないかを調べてみました。

    このエラーが起こる環境はOpenSSLが3.xの時に発生します。
    kusanagiでは、PHP7.4.26あたりからOpenSSLが1から3に変わっているようです。
    そこで、下記のようにダウングレードを試みましたが依存関係によりダウンできませんでした。
    yum downgrade kusanagi-php7-7.4.25-1

    close_notifyの問題に関しては、このエラーを無視するためのコンテキスト(SSL_OP_IGNORE_UNEXPECTED_EOF)が用意されるようですが、これが利用できるのはPHP8.1.7からとなっています。

    PHPのドキュメントでは、「PHP >= 8.1 のみが、OpenSSL >= 3.0 をサポートしています。」とあります。
    https://www.php.net/manual/ja/openssl.requirements.php

    現状のkusanagi(PHP7.4、8.0)でOpenSSL1を使うことはできないものでしょうか。