我不知道我在做什么错或正在发生什么,但是我对正在发生的事情完全感到困惑。是否出于某种原因在SMTP级别上拒绝了我为pop-> Authorise传递的完全相同的登录信息?
这是我的连接代码
$username = '[email protected]';
$password = 'mypass';
$server = 'mail.mydomain.com';
$pop = new POP3();
$pop->Authorise($server, 110, 30, $username, $password, 1);
$mail = new PHPMailer;
$mail->SMTPDebug = 2; // Enable verbose debug output
echo "starting mailer..<br/>";
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = $server; // Specify main and backup SMTP servers
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'tls'; // Enable SMTP authentication
$mail->Username = $username; // SMTP username
$mail->Password = $password; // SMTP password
$mail->Port = 587; // TCP port to connect to
$mail->setFrom('[email protected]', 'Mailer');
$mail->addAddress('[email protected]', 'Joe User'); // Add a recipient
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = 'Here is the subject';
$mail->Body = 'This is the HTML message body <b>in bold!</b>';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
if(!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent';
}
结果是...
Server -> Client: +OK POP3 server ready <[email protected]> Server -> Client: +OK User:'[email protected]' ok Server -> Client: +OK Password ok
以上显示使用POP登录显然已接受
2016-02-12 16:38:05 SERVER -> CLIENT: 220-a2ls11.hosting.com ESMTP Exim 4.85 #2 Fri, 12 Feb 2016 11:38:05 -0500 220-We do not authorize the use of this system to transport unsolicited, 220 and/or bulk e-mail.
2016-02-12 16:38:05 CLIENT -> SERVER: EHLO mydomain.com
2016-02-12 16:38:05 SERVER -> CLIENT: 250-a2ls11.hosting.com Hello a2ls11.hosting.com [75.98.175.122] 250-SIZE 52428800 250-8BITMIME 250-PIPELINING 250-AUTH PLAIN LOGIN 250-STARTTLS 250 HELP
2016-02-12 16:38:05 CLIENT -> SERVER: STARTTLS
2016-02-12 16:38:05 SERVER -> CLIENT: 220 TLS go ahead
2016-02-12 16:38:05 CLIENT -> SERVER: EHLO mydomain.com
2016-02-12 16:38:05 SERVER -> CLIENT: 250-a2ls11.hosting.com Hello a2ls11.hosting.com [75.98.175.122] 250-SIZE 52428800 250-8BITMIME 250-PIPELINING 250-AUTH PLAIN LOGIN 250 HELP
2016-02-12 16:38:05 CLIENT -> SERVER: AUTH LOGIN
2016-02-12 16:38:09 SERVER -> CLIENT: 334 VXNlcm5hbWU6
2016-02-12 16:38:09 CLIENT -> SERVER: xxx
2016-02-12 16:38:09 SERVER -> CLIENT: 334 UGFzc3dvcmQ6
2016-02-12 16:38:09 CLIENT -> SERVER: yyy
2016-02-12 16:38:11 SERVER -> CLIENT: 535 Incorrect authentication data
2016-02-12 16:38:11 SMTP ERROR: Password command failed: 535 Incorrect authentication data
2016-02-12 16:38:11 SMTP Error: Could not authenticate. 2016-02-12 16:38:11 CLIENT -> SERVER: QUIT
2016-02-12 16:38:11 SERVER -> CLIENT: 221 a2ls11.hosting.com closing connection
2016-02-12 16:38:11 SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting Message could not be sent.Mailer Error: SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
我的意思是我做错了什么?我只是无法理解我的一生。我什至尝试使用和不使用SMTPSecure。我尝试使用端口25而不是587,但是端口587与我在Outlook中使用的端口完全相同。我很沮丧
显然问题是因为我所在的主机实际上不允许连接到外部SMTP服务器。疯狂的是,如上所述,我没有从日志中得到错误,就像登录信息不正确一样。我通过将信息完全上传到另一台服务器上来验证了这种情况,并且工作正常。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句