Symfony2 Amazon SES SMTP邮件设置

时间:2013-07-09 13:31:29

标签: symfony smtp email-integration amazon-ses

我有一个Symfony2应用程序需要使用Amazon SES发送邮件。我需要使用SMTP进行设置。出于某种原因,我的Symfony2应用程序因为我已经将它放在实例上而无法发送邮件。它在我的本地服务器上运行完美,并使用gmail发送邮件,但在实时服务器上,而不是Amazon SES工作的gmail。我的配置是:

mailer_transport:  smtp
mailer_host:       SMTPHOST
mailer_encryption: tls
mailer_auth_mode:  login
mailer_user:       SMTPUSER
mailer_password:   SMTPPASS
mailer_port:       465

我已经从SES控制台在线获取了SMTPHOST,SMTPUSER和SMTPPASS这三件事。但邮件似乎仍然没有。我真的不想设置一个单独的邮件服务器。我使用Symfony2预先集成的Swiftmailer库来发送所有电子邮件,第三方包也是如此。

我不知道如何做到这一点,因为这是我第一次使用AWS。任何帮助将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:0)

在app / config / config.yml中检查你有这个:

# app/config/config.yml
swiftmailer:
    transport: "%mailer_transport%"
    host:      "%mailer_host%"
    username:  "%mailer_user%"
    password:  "%mailer_password%"
    encryption: "%mailer_encryption%"

在我的情况下,加密线丢失了。然后清除缓存。

答案 1 :(得分:0)

要通过AWS SES发送电子邮件,您需要激活该帐户。当您开始时,您的AWS SES帐户位于sandbox,因此您需要向亚马逊提交问题,要求他们完全激活您的帐户。

其中一项要求是manage bounces and complaints

要使用Symfony,您可以使用AWS SES Monitor捆绑包,该捆绑包可以为您设置通过AWS SES发送电子邮件所需的所有内容。

它还有一个SwiftMailer插件,让您可以过滤掉有退回或投诉的电子邮件地址,这样您就可以保持SES帐户的健康状态。