我知道这个问题已被提出但是没有答案可以帮助我。
这是我的代码,希望你能找到错误。
<?php
require("phpMailer/class.phpmailer.php");
require("phpMailer/class.smtp.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Host = 'smtp.example.com';
$mail->Port = 587;
$mail->Username = "mailer@example.com"; // SMTP username
$mail->Password = "validpassword"; // SMTP password
$mail->From = "mailer@example.com";
$mail->FromName = "Mailer";
$mail->AddAddress("my.email@gmail.com");
$mail->AddReplyTo("mailer@example.com", "Mailer");
$mail->WordWrap = 50; // set word wrap to 50 characters
$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. <p>";
echo "Mailer Error: " . $mail->ErrorInfo;
exit;
}
echo "Message has been sent";
?>
PS:有趣的是,我的邮件没有使用邮件程序进入垃圾邮件()...但我必须使用Phpmailer。
答案 0 :(得分:0)
你的邮件是垃圾邮件,你的邮件正在被发送,因此你的脚本(可能)没有任何问题。邮件传递到垃圾邮件的原因有很多。最明显的是,它可能 垃圾邮件。您应该检查邮件配置的配置,特别是检查正确的SPF和DKIM记录。如果您使用的是第三方邮件服务,请检查他们自己是否已被列入黑名单。检查您的退货地址是否有意义且有效。跟踪标题中的路径,并查看在途中添加任何警告的位置。最后,检查您自己的垃圾邮件过滤器。
答案 1 :(得分:0)
要查看您发送这些邮件服务器的邮件服务器是否存在引起其他邮件服务器认为是垃圾邮件发送者的明显问题,请尝试从脚本发送邮件至check-auth@verifier.port25.com。这项服务会进行大量的检查,你会得到一份包含大量信息的报告,这样的天气或不是你的邮件服务器的DNS设置正确,你的邮件服务器的IP是否在任何黑名单上,如果你有问题与您的SPF记录等。
答案 2 :(得分:-1)
//servidor smtp
$mail->Mailer = "smtp";
//Muy importante para que llegue a hotmail y otros
$mail->Helo = "localhost";
//Asignamos a Host el nombre de nuestro servidor smtp
$mail->Host = "localhost";
$mail->Port = 25;