我正在尝试运行此脚本来发送电子邮件
require_once('PHPMailer/PHPMailerAutoload.php');
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'ssl';
$mail->Username = 'myaccount@gmail.com';
$mail->Password = 'mypass';
$mail->Port = '465';
$mail->SMTPDebug = 1;
$mail->SetFrom('myaccount@gmail.com', 'NAME SURNAME');
$mail->Subject = 'FeedBack';
$mail->MsgHTML('hello');
$address = 'destination@gmail.com';
$mail->AddAddress($address);
$mail->Send();
if(!$mail->Send()) {
echo 'Mailer Error: ' . $mail->ErrorInfo;
}
else {
echo 'Message sent!';
}
?>
但它返回了我这些错误:
2015-03-09 21:29:37客户 - >服务器:EHLO www.mydomain.com
2015-03-09 21:29:37客户 - >服务器:AUTH LOGIN
2015-03-09 21:29:37客户 - >服务器: Y29pbGx0ZWFuY2FwaXRhbGRldmVsb3BknfBnbWFpbC5jb20 =
2015-03-09 21:29:37客户 - >服务器:bmVgr2Vic2l0ZQ ==
2015-03-09 21:29:37 SMTP ERROR:密码命令失败:534-5.7.14 请通过网络浏览器登录,然后重试。 534-5.7.14 在534 5.7.14了解更多信息 https://support.google.com/mail/bin/answer.py?answer=78754 n3sm29933619wja.36 - gsmtp
2015-03-09 21:29:37客户 - >服务器:退出
2015-03-09 21:29:37 SMTP connect()失败。
2015-03-09 21:29:37客户 - >服务器:EHLO www.mydomain.com
2015-03-09 21:29:37客户 - >服务器:AUTH LOGIN
2015-03-09 21:29:37客户 - >服务器: Y29pbGx0ZWFuY2FwaXRhbvRldcVsb3BlckBnbWFpbC5jb20 =
2015-03-09 21:29:37客户 - >服务器:bmV3d2Vic2l0ZQ ==
2015-03-09 21:29:37 SMTP ERROR:密码命令失败:534-5.7.14 请通过网络浏览器和534-5.7.14登录,然后重试。 534-5.7.14了解更多信息,请点击534 5.7.14 https://support.google.com/mail/bin/answer.py?answer=78754 y14sm29932162wjr.39 - gsmtp
2015-03-09 21:29:37客户 - >服务器:退出2015-03-09 21:29:37 SMTP 连接失败。邮件程序错误:SMTP连接()失败。
我无法理解为什么。如果我在wamp服务器上本地运行这个脚本它可以工作,但是如果它在在线服务器(linux)上传它它不起作用。
答案 0 :(得分:0)
删除$mail->IsSMTP();