php - 使用 php 5.6 的邮件(xampp 1.8.3 - 窗口 8)

标签 php email ssl sendmail phpmailer

帮助我:我没有使用 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/

相关文章:

javascript - 电子邮件未发送。 ajax发送的值

c# - 如何使用 WCF 使用 PHP SOAP 服务

javascript - 用于删除无效 HTML 标记之间的空格的正则表达式 - 即 "</b >"应为 "</b>"

php - 如何使用 MySQL 查询选择 WordPress 中的所有类别?

php - routes.php 中的 CodeIgniter 路由链接

mysql jdbc 与 SSL 的连接在 tls 握手级别失败

java - 在哪里可以找到可以让我知道何时打开适用于大量收件人的电子邮件的代码?

php - Laravel 在 PHPUnit 测试期间断言多个电子邮件收件人

java - 逻辑开始方法 (java.security.cert.X509CRL) isRevoked

ssl - Heroku SSL 端点的问题