【问题标题】:PHPMailer and outlook 365 sometimes worksPHPMailer 和 Outlook 365 有时有效
【发布时间】:2018-02-22 10:30:29
【问题描述】:

在不更改任何代码的情况下,有时带有 SMTP 和 Outlook 365 的 PHPMailer 可以正常工作,但有时不能。
我尝试了 SMTPDebug 并比较了结果,但它们几乎相同。
正如您在底部看到的那样,它似乎在身份验证失败。

请帮忙!

这里是 SMTPDebug >= 4

成功

SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "220 SC1P215CA0018.outlook.office365.com Microsoft ESMTP MAIL Service ready at Wed, 13 Sep 2017 15:28:47 +0000 "
SMTP -> get_lines(): $data is "220 SC1P215CA0018.outlook.office365.com Microsoft ESMTP MAIL Service ready at Wed, 13 Sep 2017 15:28:47 +0000 "
SMTP -> FROM SERVER:220 SC1P215CA0018.outlook.office365.com Microsoft ESMTP MAIL Service ready at Wed, 13 Sep 2017 15:28:47 +0000
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $str is "250-SIZE 157286400 "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 "
SMTP -> get_lines(): $str is "250-PIPELINING "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING "
SMTP -> get_lines(): $str is "250-DSN "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN "
SMTP -> get_lines(): $str is "250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $str is "250-STARTTLS "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS "
SMTP -> get_lines(): $str is "250-8BITMIME "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME "
SMTP -> get_lines(): $str is "250-BINARYMIME "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME "
SMTP -> get_lines(): $str is "250-CHUNKING "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME 250-CHUNKING "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME 250-CHUNKING "
SMTP -> get_lines(): $str is "250 SMTPUTF8 "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 SMTPUTF8 "
SMTP -> FROM SERVER: 250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 SMTPUTF8
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "220 2.0.0 SMTP server ready "
SMTP -> get_lines(): $data is "220 2.0.0 SMTP server ready "
SMTP -> FROM SERVER:220 2.0.0 SMTP server ready
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $str is "250-SIZE 157286400 "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 "
SMTP -> get_lines(): $str is "250-PIPELINING "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING "
SMTP -> get_lines(): $str is "250-DSN "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN "
SMTP -> get_lines(): $str is "250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $str is "250-AUTH LOGIN XOAUTH2 "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 "
SMTP -> get_lines(): $str is "250-8BITMIME "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME "
SMTP -> get_lines(): $str is "250-BINARYMIME "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME "
SMTP -> get_lines(): $str is "250-CHUNKING "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME 250-CHUNKING "
SMTP -> get_lines(): $data was "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME 250-CHUNKING "
SMTP -> get_lines(): $str is "250 SMTPUTF8 "
SMTP -> get_lines(): $data is "250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 SMTPUTF8 "
SMTP -> FROM SERVER: 250-SC1P215CA0018.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 SMTPUTF8
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "334 VXNlcm5hbWU6 "
SMTP -> get_lines(): $data is "334 VXNlcm5hbWU6 "
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "334 UGFzc3dvcmQ6 "
SMTP -> get_lines(): $data is "334 UGFzc3dvcmQ6 "
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "235 2.7.0 Authentication successful target host BLUPR16MB0179.namprd16.prod.outlook.com "
SMTP -> get_lines(): $data is "235 2.7.0 Authentication successful target host BLUPR16MB0179.namprd16.prod.outlook.com "
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 2.1.0 Sender OK "
SMTP -> get_lines(): $data is "250 2.1.0 Sender OK "
SMTP -> FROM SERVER:250 2.1.0 Sender OK
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 2.1.5 Recipient OK "
SMTP -> get_lines(): $data is "250 2.1.5 Recipient OK "
SMTP -> FROM SERVER:250 2.1.5 Recipient OK
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "354 Start mail input; end with . "
SMTP -> get_lines(): $data is "354 Start mail input; end with . "
SMTP -> FROM SERVER:354 Start mail input; end with .
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 2.6.0 [InternalId=93054761437225, Hostname=BLUPR16MB0179.namprd16.prod.outlook.com] 3346 bytes in 0.985, 3.315 KB/sec Queued mail for delivery "
SMTP -> get_lines(): $data is "250 2.6.0 [InternalId=93054761437225, Hostname=BLUPR16MB0179.namprd16.prod.outlook.com] 3346 bytes in 0.985, 3.315 KB/sec Queued mail for delivery "
SMTP -> FROM SERVER:250 2.6.0 [InternalId=93054761437225, Hostname=BLUPR16MB0179.namprd16.prod.outlook.com] 3346 bytes in 0.985, 3.315 KB/sec Queued mail for delivery

错误

SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "220 SC1P15201CA0047.outlook.office365.com Microsoft ESMTP MAIL Service ready at Wed, 13 Sep 2017 15:21:14 +0000 "
SMTP -> get_lines(): $data is "220 SC1P15201CA0047.outlook.office365.com Microsoft ESMTP MAIL Service ready at Wed, 13 Sep 2017 15:21:14 +0000 "
SMTP -> FROM SERVER:220 SC1P15201CA0047.outlook.office365.com Microsoft ESMTP MAIL Service ready at Wed, 13 Sep 2017 15:21:14 +0000
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $str is "250-SIZE 157286400 "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 "
SMTP -> get_lines(): $str is "250-PIPELINING "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING "
SMTP -> get_lines(): $str is "250-DSN "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN "
SMTP -> get_lines(): $str is "250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $str is "250-STARTTLS "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS "
SMTP -> get_lines(): $str is "250-8BITMIME "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME "
SMTP -> get_lines(): $str is "250-BINARYMIME "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME "
SMTP -> get_lines(): $str is "250-CHUNKING "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME 250-CHUNKING "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME 250-CHUNKING "
SMTP -> get_lines(): $str is "250 SMTPUTF8 "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 SMTPUTF8 "
SMTP -> FROM SERVER: 250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 SMTPUTF8
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "220 2.0.0 SMTP server ready "
SMTP -> get_lines(): $data is "220 2.0.0 SMTP server ready "
SMTP -> FROM SERVER:220 2.0.0 SMTP server ready
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] "
SMTP -> get_lines(): $str is "250-SIZE 157286400 "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 "
SMTP -> get_lines(): $str is "250-PIPELINING "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING "
SMTP -> get_lines(): $str is "250-DSN "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN "
SMTP -> get_lines(): $str is "250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES "
SMTP -> get_lines(): $str is "250-AUTH LOGIN XOAUTH2 "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 "
SMTP -> get_lines(): $str is "250-8BITMIME "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME "
SMTP -> get_lines(): $str is "250-BINARYMIME "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME "
SMTP -> get_lines(): $str is "250-CHUNKING "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME 250-CHUNKING "
SMTP -> get_lines(): $data was "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME 250-CHUNKING "
SMTP -> get_lines(): $str is "250 SMTPUTF8 "
SMTP -> get_lines(): $data is "250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 SMTPUTF8 "
SMTP -> FROM SERVER: 250-SC1P15201CA0047.outlook.office365.com Hello [X.X.X.X] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-AUTH LOGIN XOAUTH2 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 SMTPUTF8
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "334 VXNlcm5hbWU6 "
SMTP -> get_lines(): $data is "334 VXNlcm5hbWU6 "
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "334 UGFzc3dvcmQ6 "
SMTP -> get_lines(): $data is "334 UGFzc3dvcmQ6 "
SMTP -> ERROR: Password not accepted from server:
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "235 2.7.0 Authentication successful target host CY1PR16MB0187.namprd16.prod.outlook.com "
SMTP -> get_lines(): $data is "235 2.7.0 Authentication successful target host CY1PR16MB0187.namprd16.prod.outlook.com "
SMTP -> FROM SERVER:235 2.7.0 Authentication successful target host CY1PR16MB0187.namprd16.prod.outlook.com
SMTP -> ERROR: RSET failed: 235 2.7.0 Authentication successful target host CY1PR16MB0187.namprd16.prod.outlook.com
SMTP Error: Could not authenticate.

发送邮件功能

public function enviarCorreo($para, $cc = NULL, $nombre_desde, $asunto, $cuerpo, $adjunto)
{
    $bd = new DB;
    require_once(dirname(__FILE__) . '/../include/PHPMailer/class.phpmailer.php');

    try {
        $mail = new PHPMailer();
    }
    catch (Exception $e) {
        echo "No se pudo instanciar el objeto Mail: ".$e->getMessage()."<br>";
    }

    $sqlParamCorreo = $bd->query("SELECT * FROM parametros") or die ("Error parametros: ".mysql_error());

    if($sqlParamCorreo)
        $correo = $bd->fetchObj();  
    else
        $correo = NULL;

    $mail->SetLanguage("es", 'includes/phpMailer/language/');
    $mail->IsSMTP();
    $mail->SMTPDebug = 4;

    $mail->Host = $correo->host_correo; // smtp.office365.com

    $mail->SMTPAuth = true; 
    $mail->SMTPSecure = "tls";

    $mail->Port = $correo->puerto_correo; // 587

    $mail->Username = $correo->usuario_correo;
    $mail->Password = $correo->pass_correo;

    $mail->SetFrom($correo->usuario_correo, $nombre_desde);
    $mail->Subject  = $asunto;

    foreach($para as $destino) {
        $mail->AddAddress($destino);
    }

    if(!is_null($cc)) {
        foreach($cc as $destino_cc) {
            $mail->AddCC($destino_cc);
        }
    }

    if(!is_null($adjunto)) {
        $aux = explode("_",$adjunto);
        $nombre = "OC_".$aux[1]."_".$aux[2];
        $mail->AddAttachment($adjunto, $nombre);    
    }

    $mail->IsHTML(true);

    $mail->Body = $cuerpo;

    if(!$mail->Send())
        return $mail->ErrorInfo;

    else
        return true;
}

【问题讨论】:

  • 您是否注意到您的身份验证失败?密码被拒绝
  • 我会仔细看看你的 sql。您从 SQL 数据库中提取密码
  • 另外,我会看看你的错误日志。我对此并不完全确定,但我认为您刚刚公开泄露了密码/哈希
  • @DaMaxContent 感谢您的回答。我注意到身份验证失败。当我做这个测试时,我转储了数据库参数并且总是得到正确的数据。我没有看到我在哪里泄露了密码
  • 运行 非常 旧版本的 PHPMailer 并没有帮助。 Get the latest 再试一次。 SMTPDebug = 2 足以调试这一级别的问题; 4 太吵了。

标签: php outlook phpmailer


【解决方案1】:

我将 PHPMailer 从 5.2 更新到 6
现在它正在工作。谢谢Synchro
我在更新前联系了微软支持......他们说这是我的应用程序问题

【讨论】:

    猜你喜欢
    • 2021-09-22
    • 1970-01-01
    • 1970-01-01
    • 2016-02-17
    • 1970-01-01
    • 1970-01-01
    • 2020-05-27
    • 1970-01-01
    • 2020-01-04
    相关资源
    最近更新 更多