phpmailer从PHP 5.5升级到7.1.4后失败



具体而言,我们失败了此消息:

[30-Apr-2017 14:05:18 UTC] PHP Warning:  stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:
error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure in /home/xxxxxxxx/public_html/phpmailer/PHPMailer-5.2.8/class.smtp.php on line 272

谷歌搜索此信息,我们发现了PHP 5.5升级期间类似错误的报告 - 但这全部源于PHP 5.6中提出的改进的证书验证。这似乎不是我们的问题。例如 - 遵循phpmailer故障排除Wiki-我们能够使用OpenSSL连接到SMTP服务器。

openssl s_client -starttls smtp -crlf -connect vps.ourserver.com:587
.
.
SSL handshake has read 5284 bytes and written 468 bytes
.
.
Verify return code: 0 (ok)

在(4级(上打开smtbdebug并没有显示任何有用的东西:

2017-04-30 16:04:54     CLIENT -> SERVER: STARTTLS
2017-04-30 16:04:54     SMTP -> get_lines(): $data is ""
2017-04-30 16:04:54     SMTP -> get_lines(): $str is  "220 TLS go ahead
                                          "
2017-04-30 16:04:54     SERVER -> CLIENT: 220 TLS go ahead
2017-04-30 16:04:54     SMTP Error: Could not connect to SMTP host.
2017-04-30 16:04:54     CLIENT -> SERVER: QUIT

如前所述 - 此问题在PHP升级后立即开始。没有更改代码或SSL/证书配置。

有关下一步进行故障排除的建议?

编辑:建议以前已解决此问题SSL3_GET_SERVER_CERTIFICATE ..但是这是一个不同的错误消息(我确实尝试按建议的建议覆盖SMTPOPTIONS。

已解决。升级到phpmailer 5.2.23,错误消息消失了。感谢Synchro(尽管有尖锐的语气...大声笑(。

相关内容

  • 没有找到相关文章

最新更新