1

我将后缀配置为在发送电子邮件时使用 Amazon SES。我正在尝试使用 FOSUserBundle 的功能来发送电子邮件以重置用户密码。不幸的是,邮件永远不会到达邮箱,Amazon SES 不接受 FOSUserBundle 伪造的电子邮件。

有人知道这封电子邮件有什么问题吗:

Content-Transfer-Encoding: quoted-printable
Content-Type: text/html; charset=utf-8
MIME-Version: 1.0
Date: Mon, 15 Oct 2012 04:07:56 +0000
Message-ID: <1350274076.507b8c1c8cee8@www.yourownpoet.com>
From: quilly@YourOwnPoet.com
Subject: blablou
To: toto@gmail.com
Bcc: 
    <html><body>whatever</body></html>

这也不起作用:

Content-Type: multipart/alternative;
boundary="_=_swift_v4_1350274671507b8e6f82b5f_=_"
MIME-Version: 1.0
Date: Mon, 15 Oct 2012 04:17:51 +0000
Message-ID: <1350274671.507b8e6f99894@www.yourownpoet.com>
From: quilly@YourOwnPoet.com
Subject: blablou
To: toto@gmail.com
Bcc: 
    <html><body>whatever</body></html>

我创建了自己的邮件服务,以尝试使用不同标题的电子邮件(我使用 SwiftMailer)。我应该如何伪造我的电子邮件以便它通过 Amazon SES?

编辑:

我注意到其他邮件内容类型为:多部分/混合;通过 SES,但我没有设法将 content-type 字段强制为该值。有可能做到吗?这是我伪造电子邮件的方法:

$message = \Swift_Message::newInstance()
        ->setContentType('multipart/mixed')
        ->setSubject('blablou')
        ->setFrom('quilly@YourOwnPoet.com')
        ->setTo('toto@gmail.com')
        ->setBody('<html><body>whatever</body></html>', 'text/html')
        ->addPart('fdsfsd', 'text/plain');

$this->mailer->send($message);

但内容类型仍然是“多部分/替代”..

4

1 回答 1

2

好吧,找到答案了……把帖子留在这里,谁知道有一天可能对某人有用。

问题不是来自内容类型,而是来自发件人的电子邮件地址!请记住,您必须设置哪些电子邮件地址有权通过ses发送电子邮件。并且此电子邮件区分大小写!

您可以毫无问题地使用 FOSserBundle 提供的 Mailer,但要正确配置:

配置.yml:

fos_user
    resetting:
        email:
            template: YOPYourOwnPoetBundle:Emails:resetEmail.html.twig
    from_email:
        address:        Quilly@YourOwnPoet.com /*set ses accepted email address here */
        sender_name:    Quilly
    service:
        mailer: fos_user.mailer.twig_swift
于 2012-10-15T04:58:16.773 回答