Php SMTP电子邮件在Outlook上变成垃圾邮件

Php SMTP电子邮件在Outlook上变成垃圾邮件,php,email,smtp,swiftmailer,Php,Email,Smtp,Swiftmailer,我有一个每天发送电子邮件的应用程序。我使用的是SwiftMailerPHP库和SMTP帐户 我向以下提供商发送了测试电子邮件,以查看电子邮件是否进入收件箱或垃圾邮件: - GMail (OK - Inbox) - Yahoo (OK - Inbox) - AOL (OK - Inbox) - Outlook (FAIL - Junk) 现在我使用的代码是: // init smtp transport if ($smtp_ssl !== false)

我有一个每天发送电子邮件的应用程序。我使用的是SwiftMailerPHP库和SMTP帐户

我向以下提供商发送了测试电子邮件,以查看电子邮件是否进入收件箱或垃圾邮件:

 - GMail   (OK - Inbox)
 - Yahoo   (OK - Inbox)
 - AOL     (OK - Inbox)
 - Outlook (FAIL - Junk)
现在我使用的代码是:

    // init smtp transport
    if ($smtp_ssl !== false)
    {
        $transport = Swift_SmtpTransport::newInstance($smtp_host, $smtp_port, strtolower($smtp_ssl));
    }
    else
    {
        $transport = Swift_SmtpTransport::newInstance($smtp_host, $smtp_port);
    }

    // using login/password
    if($smtp_user !== false && $smtp_pass !== false){
        $transport->setUsername($smtp_user);
        $transport->setPassword($smtp_pass);
    }

    $mailer = Swift_Mailer::newInstance($transport);

    $status = $mailer->send($message);
我不明白为什么Outlook会将此视为垃圾邮件

现在我注意到,如果我的SMTP帐户来自我的服务器,比如:test@myserverdomain.com会变成垃圾邮件,但如果我将SMTP帐户更改为类似test@gmail.com然后它进入收件箱

hotmail将我的服务器域视为垃圾邮件,这是否有问题


如果我的SMTP帐户是test@gmail.com现在,AOL将此SMTP帐户发送的电子邮件视为垃圾邮件。

您不能简单地使用随机邮件地址,希望它能正常工作。垃圾邮件对策可能会检查发送服务器是否被允许从该地址发送邮件。谷歌关于“域密钥”或“SPF”来查看两种现有的邮件发送认证方法。我假设您的服务器不允许从“@gmail.com”域发送邮件,因此任何人都会将这些邮件标记为垃圾邮件

此外,垃圾邮件检测是分析邮件内容。这也可以单独配置,因为每个人的垃圾邮件都是不同的。您声称“outlook.com”将您的邮件识别为垃圾邮件可能是因为您之前将邮件标记为垃圾邮件,看起来与您现在发送的邮件一样。其他帐户可能会认为此邮件有效


如果接收邮件服务没有通知收件人此邮件被标记为垃圾邮件的原因,那么您就无能为力了。但这不是SwiftMailers的故障,也不是与您的设置有关。

谢谢。这很奇怪,因为如果我使用Gmail SMTP帐户而不是我的服务器帐户,outlook不会将电子邮件视为垃圾邮件,但现在AOL将其视为垃圾邮件。