这是我的代码:
function send_mail($email,$message,$subject)
{
require_once('mailer/class.phpmailer.php');
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPDebug = 2;
$mail->SMTPAuth = true;
$mail->SMTPSecure = "tls";
$mail->Host = "";
$mail->Port = 587;
$mail->AddAddress($email);
$mail->Username="n";
$mail->Password=""; //correct password
$mail->SetFrom('','');
$mail->AddReplyTo("","");
$mail->Subject = $subject;
$mail->MsgHTML($message);
$mail->Send();
}
和我的调试输出:
SMTP - > FROM SERVER:220-md-in-79.webhostbox.net ESMTP Exim 4.87#1 Fri,04 Aug 2017 11:09:34 +0000 220 - 我们不授权使用此系统来运送未经请求的,220和/或批量电子邮件。 SMTP - > FROM SERVER:250-md-in-79.webhostbox.net您好[103.53.43.68] 250-SIZE 52428800 250-8BITMIME 250-PIPELINING 250-AUTH PLAIN LOGIN 250-STARTTLS 250帮助 SMTP - >从服务器:220 TLS继续 SMTP - > FROM SERVER:250-md-in-79.webhostbox.net您好[103.53.43.68] 250-SIZE 52428800 250-8BITMIME 250-PIPELINING 250-AUTH PLAIN LOGIN 250帮助 SMTP - >从服务器:250好的 SMTP - >来自服务器:250接受 SMTP - > FROM SERVER:354输入消息,以“。”结尾。在一条线上 SMTP - > FROM SERVER:250通过SMTP身份验证拒绝欺骗尝试的消息
我正在使用Hostgator服务器
答案 0 :(得分:1)
您的邮件提供商希望避免源自其服务器的任何类型的电子邮件欺骗。您必须在From
字段中使用您的用户名:
$mail->SetFrom('info@quickdawa.in','QuickDawa');
答案 1 :(得分:0)
首先,我可以说你正在使用一个非常旧版本的PHPMailer - get the latest。
它说你欺骗的原因是因为你在欺骗......
您使用mail.quickdawa.in
的发件人地址发送quickdawa@gmail.com
,但gmail未将您的主机列为gmail.com地址的有效来源,因此您未通过SPF检查。
如果您想从Gmail地址发送,则需要通过Gmail发送。有关如何执行此操作,请参阅the gmail example provided with PHPMailer。
或者,从您使用。
登录的地址发送