PHP 警告 : fgets(): SSL operation failed with code 1

标签 php ssl horde

这是错误日志,我不知道如何解决。

[Thu Jan 25 10:39:42.689306 2018] [:error] [pid 21084] PHP Warning: fgets(): SSL operation failed with code 1. OpenSSL Error messages:
error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt
error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt
error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt
error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt in ../vendor/pear-pear.horde.org/Horde_Imap_Client/Horde/Imap/Client/Socket/Connection/Socket.php on line 156

public function read($size = null)
{
    $got_data = false;
    $literal_len = null;
    $token = new Horde_Imap_Client_Tokenize();

    do {
        if (feof($this->_stream)) {
            $this->close();
            $this->_params['debug']->info(
                'ERROR: Server closed the connection.'
            );
            throw new Horde_Imap_Client_Exception(
                Horde_Imap_Client_Translation::r("Mail server closed the connection unexpectedly."),
                Horde_Imap_Client_Exception::DISCONNECT
            );
        }

        if (is_null($literal_len)) {
            $buffer = '';

            while (($in = fgets($this->_stream)) !== false) {
                $got_data = true;

                if (substr($in, -1) === "\n") {
                    $in = rtrim($in);
                    $this->_params['debug']->server($buffer . $in);
                    $token->add($in);
                    break;
                }

                $buffer .= $in;
                $token->add($in);
            }

            /* Check for literal data. */
            if (is_null($len = $token->getLiteralLength())) {
                break;
            }

            // Skip 0-length literal data.
            if ($len['length']) {
                $binary = $len['binary'];
                $literal_len = $len['length'];
            }

            continue;
        }

        $old_len = $literal_len;

        while (($literal_len > 0) && !feof($this->_stream)) {
            $in = fread($this->_stream, min($literal_len, 8192));
            /* Only store in stream if this is something more than a
             * nominal number of bytes. */
            if ($old_len > 256) {
                $token->addLiteralStream($in);
            } else {
                $token->add($in);
            }

            if (!empty($this->_params['debugliteral'])) {
                $this->_params['debug']->raw($in);
            }

            $got_data = true;
            $literal_len -= strlen($in);
        }

        $literal_len = null;

        if (empty($this->_params['debugliteral'])) {
            $this->_params['debug']->server('[' . ($binary ? 'BINARY' : 'LITERAL') . ' DATA: ' . $old_len . ' bytes]');
        }
    } while (true);

    if (!$got_data) {
        $this->_params['debug']->info('ERROR: read/timeout error.');
        throw new Horde_Imap_Client_Exception(
            Horde_Imap_Client_Translation::r("Error when communicating with the mail server."),
            Horde_Imap_Client_Exception::SERVER_READERROR
        );
    }

    return $token;
}

错误出现在

while (($in = fgets($this->_stream)) !== false) {

我的应用程序的另一个实例位于同一台服务器上,具有相同的设置,只是数据库和域名不同。

另一个实例似乎工作正常,没有出现此错误的问题。

注意:Horde 是一种用于发送电子邮件的 PHP 库。

谁能帮帮我?

最佳答案

请尝试更改您的设置如下:

<?php
    $yourArrayOptions=array(
    "ssl"=>array(
    "verify_peer"=>false,
    "verify_peer_name"=>false,
 ),
)
$response = file_get_contents("fileName", false, 
stream_context_create($yourArrayOptions));
echo $response; ?>

请点击这里以获得更好的解释file_get_contents(): SSL operation failed with code 1. And more

关于PHP 警告 : fgets(): SSL operation failed with code 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48441987/

相关文章:

php - SQL 获取组 id 的唯一值,其中成员 id 是一个或多个

javascript - FB之类的按钮edge.create事件在登录后不会触发

javascript - 使用多级对象在 javascript 中发布请求

Node.js SSL 身份验证

php - Horde_Text_Diff_Renderer 颜色等

php - HORDE Imap PHP 客户端 - 如何获取消息

php - Laravel Eloquent 连接不相关的表?

java - 独立 Tomcat 7 不支持 SSL 协议(protocol)

java - "java.lang.UnsupportedOperationException: Not supported yet."

SSL 例程 :SSL23_GET_SERVER_HELLO:unknown protocol