【问题标题】:Getting warning message in Gmail Account when I send email by using phpmailer()当我使用 phpmailer() 发送电子邮件时,在 Gmail 帐户中收到警告消息
【发布时间】:2015-05-31 18:54:06
【问题描述】:

我正在使用 phpmailer() 从我的网站发送电子邮件。但是当它发送电子邮件时,我看到以下警告消息。

我不明白它为什么会显示以及如何解决此错误消息。谁能告诉我?

以下是我的代码:

<?php
  require_once("mail/PHPMailerAutoload.php");

  $mail = new PHPMailer;
  $mail->setFrom($email);
  $mail->addReplyTo('toemail@gmail.com', 'First Last');
  $mail->addAddress('toemail@gmail.com', 'First Last');
  $mail->Subject = 'PHPMailer mail() test';
  $mail->msgHTML(file_get_contents('mail/contents.html'), dirname(__FILE__));
  $mail->AltBody = 'This is a plain-text message body';
  $mail->addAttachment('mail/images/phpmailer_mini.png');

  if (!$mail->send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
  } else {
    echo "Message sent!";
  }
  ?>

【问题讨论】:

标签: php phpmailer


【解决方案1】:

简单,您可以阅读有关 SPF DNS 记录的信息。

当您发送电子邮件时,gmail 等服务会检查发件人 ip 是否与电子邮件的域相同,例如:

  1. 您以“foo@gmail.com”的身份向“bar@hotmail.com”发送电子邮件。您的 服务器ip是1.1.1.1

  2. Hotmail 收到来自“foo@gmail.com”的电子邮件,因此请检查 gmail.com ip (2.2.2.2) 与您的服务器 (1.1.1.1) 相同。答案是不, 因此电子邮件被标记为垃圾邮件。

  3. 为避免您的电子邮件被标记为垃圾邮件,您可以使用 phpmailer 使用真实的 google 帐户并向用户提供 phpmailer 和密码发送电子邮件。

我试图在第 2 点很简单地向您解释情况。实际情况有点复杂但逻辑是相同的,请检查 ip sender 和 origin。阅读有关 SPF(和 dkim)的信息,因为这就是您要寻找的 :) http://en.wikipedia.org/wiki/Sender_Policy_Framework

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-30
    • 2021-12-16
    • 1970-01-01
    • 2017-04-12
    • 2021-10-15
    • 1970-01-01
    相关资源
    最近更新 更多