从我的域发送带有phpmailer的电子邮件会发送到垃圾邮件

时间:2017-11-07 20:38:47

标签: php html email phpmailer spam

我尝试使用phpmailer发送电子邮件,但我发送的每封邮件都在垃圾邮件文件夹中完成。

这是代码

require("phpmailer/class.phpmailer.php"); // or wherever you put phpmail.class

$username="xxx";
$password="yyy";

$mail = new PHPMailer;
$mail->isMail();
$mail->IsHTML(true);
$mail->SMTPDebug = 4;
$mail->setFrom('news@lexvirtual.cl', 'Lexvirtual');
$mail->addAddress("roasdf@gmail.com", "hola");
$mail->Subject = 'Nueva postulación lexvirtual.cl';
$mail->AddEmbeddedImage('../assets/img/common/lexvirtual_logo.png', 'logoimg', '../assets/img/common/lexvirtual_logo.png');

$body = file_get_contents('email_templates/register.php'); 
$body = str_replace('%username%', $username, $body);
$body = str_replace('%password%', $password, $body);
$message = $body;
$mail->msgHTML($message);

if ($mail->send()) {
echo "email enviado";
} else {
echo "email no enviado";
}

我从我的域名发送电子邮件是lexvirtual(我用来发送电子邮件的域名(news@lexvirtual.cl))。

现在我使用html使用模板,但是当我仅使用文本发送电子邮件时,仍然会将电子邮件发送到垃圾邮件。我尝试阅读有关此问题的其他问题,但仍无法解决问题。

有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

要为所有反垃圾邮件机制配置服务器非常困难,您必须确保您的SPF记录正确,您的反向DNS配置正确并且DMARC也不是错误的决定。

因此,在大多数情况下,如果您不想配置所有这些内容,最好通过SMTP将邮件发送给更大的邮件提供商,并让他们发送您的电子邮件。

Phpmailer会通过SMTP将您的邮件发送到另一个提供商:

$phpmailer->IsSMTP(); 
$phpmailer->SMTPAuth = true; 
$phpmailer->Host     = "smtprelaypool.ispgateway.de"; 
$phpmailer->Username = 'mymail@example.com'; 
$phpmailer->Password = 'MyPassword'; 
$phpmailer->Port = 25;