0

毎日メールを送信するアプリケーションがあります。SwiftMailer PHP ライブラリと 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 アカウントから送信された電子メールをスパムとして扱います。

4

1 に答える 1

1

単純にランダムなメール アドレスを使用して、それが機能することを期待することはできません。スパム対策では、送信側サーバーがそのアドレスからのメールの送信を実際に許可されているかどうかを確認する場合があります。「ドメイン キー」または「SPF」について Google で調べて、メールの送信を認証する 2 つの既存の方法を確認します。あなたのサーバーは「@gmail.com」ドメインからメールを送信することを許可されていないため、スパムとしてフラグを立てるのは正しいことだと思います。

さらに、スパム検出はメールの内容を分析しています。また、スパムは全員で異なるため、これは個別に構成することもできます。あなたが「outlook.com」があなたのメールをスパムとして認識したと述べたのは、あなたが今送信しているように見えるメールを以前にスパムとしてフラグ付けしたためかもしれません. 別のアカウントがこのメールを有効と見なす可能性があります。

受信メール サービスが、このメールがスパムとしてフラグ付けされた理由を受信者に通知しない場合、できることはほとんどありません。しかし、それは SwiftMailers のせいではなく、セットアップに関連したものでもありません。

于 2013-10-31T14:37:55.890 に答える