电子邮件进入收件箱,但显示垃圾邮件

时间:2018-09-17 07:06:49

标签: php

我正在尝试从我的域发送电子邮件。邮件传递正确。但是它显示了一些消息,其中提到所传递的消息是垃圾邮件。请帮助我克服这个问题。这是我收到的消息,请谨慎处理此消息

  

这可能是欺骗性消息。该邮件声称已发送   来自您的帐户,但Gmail无法验证实际来源。避免   单击链接或回复敏感信息,除非您   确保您确实发送了此消息。 (无需重设密码,   真正的发件人实际上无权访问您的帐户!)

    <?php
   if(isset($_POST['submit'])) {
$email_to = "info@maxwell.com";
$email_subject = "Your email subject line";
$name = $_POST['name'];
$message = $_POST['message'];
$email_from = $_POST['mail'];

$email_message = "Form details below.\n\n";
$email_message .= "Name: ".$name."\n";
$email_message .= "Email: ".$email_from."\n";
$email_message .= "message: ".$message."\n";
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
if(mail($email_to, $email_subject, $email_message, $headers)){
  ?>
  <script>
    window.location.href="contact.php?success";
  </script>
  <?php
  // print("Thank you for contacting us. We will be in touch with you very soon.");
}
else{
  ?>
  <script>
    window.location.href="contact.php?fail";
  </script>
     <?php
}
  // print("fail");
  }
?>

<form method="post" >
        <div class="form">
                <div class="col-md-6 col-sm-12 col-xs-12 form-group">
                    <input type="text" class="form-control" name="name" placeholder="Your Name">
                </div>
                <div class="col-md-6 col-sm-12 col-xs-12 form-group">
                    <input type="email" class="form-control" name="mail" placeholder="E-mail Address">
                </div>
                <div class="col-xs-12 col-md-12 form-group">
                    <textarea name="message" placeholder="Message..."></textarea>
                    <!-- <input type="submit" value="SEND MESSAGE" class="btn-black bounce-top"> -->
                </div>
                <div class="col-xs-12 col-md-12 form-group">
                    <input type="submit" class="btn-black bounce-top" name="submit" value="SEND MESSAGE">
                </div>
        </div>
    </form>

This is the email result

2 个答案:

答案 0 :(得分:1)

为了避免这种情况。您可以遵循以下建议:

一个简单的实现示例

<?php
mail("recipient@recipient.com", "Message", "A simple message.", "From: The Sender <sender@sender.com>");
?>

使PHP mail()电子邮件减少垃圾邮件的4种方法

  1. 使用标题
  2. 邮件发件人域和服务器域应匹配
  3. 确保正确使用内容类型属性
  4. 确认您的服务器未列入黑名单

详细说明:

1。使用标题

<?php
$headers .= "Reply-To: The Sender <sender@sender.com>\r\n";
$headers .= "Return-Path: The Sender <sender@sender.com>\r\n";
$headers .= "From: The Sender <senter@sender.com>\r\n";
?>

请确保使用$ headers变量替换第四个参数,如下所示。

<?php
mail("recipient@recipient.com", "Message", "A simple message.", $headers);
?>

2。邮件发件人域和服务器域应匹配

垃圾邮件发送者以从一台服务器发送电子邮件并试图使收件人相信它来自其他地方而臭名昭著。因此,如果您要从example@example.com发送电子邮件,则最好将脚本驻留在example.com上。

3。确保正确使用内容类型属性

Content-type属性使邮件发送者可以说出电子邮件是纯文本还是html,或者是否具有附件。显然,最容易使用的内容类型是文本/纯文本。您只需按照简单示例中所示添加文本,就可以完成。但是,当您使用其他内容类型时,可能还会有其他内容。例如,对于text / html内容类型,应使用html body标签。没有此标签可能会导致您的电子邮件被标记为垃圾邮件。

4。确认您的服务器未列入黑名单

将服务器列入黑名单时,意味着该服务器已被识别为发送大量垃圾邮件的服务器。这导致收件人邮件服务器拒绝或过滤从该服务器接收的任何邮件。

因此,如果未收到您的邮件,则最好确认您的服务器未列入黑名单。这适用于共享服务器和专用服务器。在共享环境中,服务器上的其他用户通常会发送垃圾邮件。并且在专用环境中,垃圾邮件发送者可能已经找到一种利用服务器或联系表中的漏洞发送垃圾邮件的方法。因此,很容易将这两种服务器都列入黑名单。

答案 1 :(得分:-2)

如果您想确保解决方案不要被标记为垃圾邮件,请查看Amazon的SES服务。您可能永远都不会超过免费套餐的价格,并且通过一些配置,您将以更高的价格访问收件箱。