Tôi đang sử dụng lớp phpmailer để gửi email. Hiện tại gmail và yahoo không đánh dấu email là spam, nhưng hotmail luôn làm như vậy. Làm thế nào tôi có thể ngăn chặn điều này? Mã của tôi là dưới đây.PHPmailer gửi thư đến spam trong thư hotmail. làm thế nào để khắc phục?
require_once('../PHPMailer/class.phpmailer.php');
//include("class.smtp.php"); // optional, gets called from within class.phpmailer.php if not already loaded
$mail = new PHPMailer();
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "mail.example.com"; // specify main and backup server
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "xxx"; // SMTP username -- CHANGE --
$mail->Password = "xxx"; // SMTP password -- CHANGE --
$mail->Port = "25"; // SMTP Port
$mail->From = "[email protected]"; //From Address -- CHANGE --
$mail->FromName = "xxx"; //From Name -- CHANGE --
$mail->AddAddress($email, $passerusername); //To Address -- CHANGE --
$mail->AddReplyTo("[email protected]", "xxx"); //Reply-To Address -- CHANGE --
$mail->WordWrap = 50; // set word wrap to 50 characters
$mail->IsHTML(false); // set email format to HTML
$mail->Subject = "AuthSMTP Test";
$mail->Body = "AuthSMTP Test Message!";
if(!$mail->Send())
{
echo "Message could not be sent. <p>";
echo "Mailer Error: " . $mail->ErrorInfo;
exit;
}
echo "Message has been sent";
Có lẽ những thứ như bản ghi SPF trên máy chủ, DNS ngược và các mục tương tự. (không quá hữu ích tôi biết, nhưng đây là lý do tại sao nó là một bình luận!) – jprofitt
cũng nếu nó giúp, tôi sử dụng một máy chủ vps, không phải là một chia sẻ với hostgator – Anonymous
Có 'From' và' AddReplyTo' nghĩa vụ phải là địa chỉ khác nhau hoặc đó là một lỗi đánh máy? Nếu bạn có mã đó trong mã thực tế của mình, nó có thể khiến thư bị lọc là spam. –