【问题标题】:XMLReader SSL VersionXMLReader SSL 版本
【发布时间】:2020-02-12 15:51:29
【问题描述】:

我有一个使用 XMLReader 访问网站的旧系统,它最近开始失败并出现此错误:

Warning: XMLReader::open(): SSL operation failed with code 1. OpenSSL Error messages:
error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
PHP Warning:  XMLReader::open(): Failed to enable crypto

据我了解,问题在于该网站停止接受 sslv3。我只是想知道是否有办法告诉 XMLReader 使用不同的 SSL 版本,或者是否需要更新 OpenSSL?如前所述,它是一个遗留系统,更新软件包并不是一个简单的过程,所以我正在尝试看看是否有其他方法可以解决这个问题。

感谢任何输入。

【问题讨论】:

    标签: php openssl sslv3


    【解决方案1】:

    您可以尝试禁用 SSL 检查:

    stream_context_set_default(['ssl' => ['verify_peer' => false, 'verify_peer_name' => false]]);
    

    【讨论】:

    • 感谢您的建议。必须将该行更新为该行才能运行:stream_context_set_default(array('ssl' => array('verify_peer' => false, 'verify_peer_name' => false))); 但我仍然遇到相同的 SSL 错误,因此看起来无法修复它。
    • 一个选项也可以是:$this->curlOption(CURLOPT_URL, $uri); $this->curlOption(CURLOPT_SSL_VERIFYPEER, FALSE); $this->curlOption(CURLOPT_SSL_VERIFYHOST, 2); $this->curlOption(CURLOPT_SSL_CIPHER_LIST, 'TLSv1');或者你还是要更新openssl,也可以解决上面的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-03
    • 2017-06-25
    • 2014-08-11
    • 2016-11-07
    • 1970-01-01
    • 2012-04-15
    相关资源
    最近更新 更多