我在发送电子邮件时将我的后缀配置为使用Amazon SES。 我正在尝试使用FOSUserBundle的功能来发送用户密码重置的电子邮件。 不幸的是,邮件永远不会到达邮箱,亚马逊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?
编辑:
我注意到其他内容类型的邮件:multipart / mixed;通过SES,但我没有设法强制内容类型字段为此值。有可能吗?以下是我伪造电子邮件的方式:
$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);
但内容类型仍然是“多部分/替代”..
答案 0 :(得分:2)
好吧,找到了答案......离开这里的帖子,谁知道哪一天可能对某人有用。
问题不是来自内容类型,而是来自发件人的电子邮件地址! 请记住,您必须设置哪些电子邮件地址有权通过ses发送电子邮件..此电子邮件区分大小写!
您可以毫无问题地使用FOSserBundle提供的邮件程序,但请正确配置:
config.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