我在使用PHPMailer时遇到了一些麻烦.有人可以帮忙吗?请不要告诉我我的用户名和密码可能是错误的.我三重检查,他们是正确的.
我认为可能是问题所在的代码行是:
$mail->Host = 'smtp.gmail.com';
$mail->Port = 587;
$mail->SMTPSecure = 'tls';
$mail->SMTPAuth = true;
$mail->Username = '*********@gmail.com';
$mail->Password = '*********';
$mail->setFrom('*********@gmail.com','Name');
错误日志输出为:
2015-12-31 16:46:17 CLIENT -> SERVER: EHLO nfective.com
2015-12-31 16:46:17 CLIENT -> SERVER: STARTTLS
2015-12-31 16:46:17 CLIENT -> SERVER: EHLO nfective.com
2015-12-31 16:46:17 CLIENT -> SERVER: AUTH LOGIN
2015-12-31 16:46:17 CLIENT -> SERVER: bmZlY3RpdmVAZ21haWwuY29t
2015-12-31 16:46:17 CLIENT -> SERVER: JCNAZDB3MTM=
2015-12-31 16:46:17 SMTP ERROR: Password command failed: 534-5.7.14
Please log in via your web browser and 534-5.7.14 then try again. 534-5.7.14 Learn more at 534 5.7.14 https://support.google.com/mail/answer/78754 w32sm33173561qgw.6 - gsmtp 2015-12-31 16:46:17 SMTP Error: Could not authenticate. 2015-12-31 16:46:17 CLIENT -> SERVER: QUIT 2015-12-31 16:46:17 SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting bool(false)
也可能是GMail的身份验证超出了PHPMailer的功能.我不确定.
解决方法:
我遇到了这么多次. Gmail很挑剔.您需要自己做一些事情才能使这项工作生效.
请按照以下说明进行操作:https://support.google.com/mail/answer/14257?rd=1
您还需要登录到Gmail帐户并转到此处:https://accounts.google.com/b/0/DisplayUnlockCaptcha
您还必须允许安全性较差的应用登录您的gmail帐户,在您帐户的安全设置下,您必须按下该按钮才能允许.
祝好运!进行了调整并仔细检查了三遍之后,您便可以正常使用所有密码,并且密码正确无误,您可能需要稍等片刻.真烦人!但是,一旦运行,您就可以依靠它.