帮助我:我没有使用 phpmailer + php 5.6
发送邮件。
如何修复邮件?
错误提示
SERVER -> CLIENT: 220 mx.google.com ESMTP ru8sm9096361pbb.20 - gsmtp CLIENT -> SERVER: EHLO php.local SERVER -> CLIENT: 250-mx.google.com at your service, [1.55.98.150]250-SIZE 35882577250-8BITMIME250-STARTTLS250-ENHANCEDSTATUSCODES250-PIPELINING250 SMTPUTF8 CLIENT -> SERVER: STARTTLS SERVER -> CLIENT: 220 2.0.0 Ready to start TLS
Warning: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed in D:\www\PHP\mail\PHPMailer-master\class.smtp.php on line 338 CLIENT -> SERVER: QUIT
SMTP connect() failed. Mailer Error: SMTP connect() failed.
最佳答案
您需要read the docs .
PHP 5.6 引入了 SSL 证书验证,因此如果您的配置被破坏,它将失败并出现此错误。您应该修复您的 SSL,但您可以通过覆盖 PHPmailer 并将这些选项传递给 smtpConnect
函数来恢复到旧行为:
$options = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
关于php - 使用 php 5.6 的邮件(xampp 1.8.3 - 窗口 8),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28734045/