发送通过smtp.gmail.com连接的php邮件

时间:2015-03-09 21:40:18

标签: php email smtp phpmailer

我正在尝试运行此脚本来发送电子邮件

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)上传它它不起作用。

1 个答案:

答案 0 :(得分:0)

删除$mail->IsSMTP();

解决了奇怪的问题