1
  $mail = \Swift_Message::newInstance()
            ->setSubject($message->getSubject())
            ->setFrom($message->getEmail())
            ->setBody($message->getBody());

        $this->get('mailer')->send($mail);

使用 swiftmailer 时不会发送邮件。然而,当我在调试器中一步一步进行时,它似乎发送了电子邮件并返回 send=1。但是,我的邮箱 (gmail) 中没有收到任何内容。我使用我的 gmail 帐户发送电子邮件,如下所示:

parameters:
mailer_transport: gmail
mailer_host: ~ 
mailer_user: username@gmail.com
mailer_password: my-password
delivery_address: username@gmail.com



swiftmailer:
transport: %mailer_transport%
host:      %mailer_host%
username:  %mailer_user%
password:  %mailer_password%
spool:     { type: memory }

我检查了apache错误日志,没有。我跑php app/console swiftmailer:spool:send了以防万一,但没有运气。

什么可以阻止电子邮件被发送?

4

4 回答 4

2

You need either to:

1) Remove the spool line in your swiftmailer configuration, this one:

spool: { type: memory }

2) Trigger the spool queue to be sent:

php app/console swiftmailer:spool:send

But I think you are looking for option 1)

于 2013-10-09T22:22:11.080 回答
2

你可以试试这个...

参数.yml

mailer_transport: gmail
mailer_encryption: ssl
mailer_auth_mode: login
mailer_host: smtp.gmail.com
mailer_user: 'xxxxxxxxxxxx'

配置.yml

    swiftmailer:
       transport: gmail
       host:      smtp.gmail.com
       username:  'Yourmail-id@gmail.com'
       password:  'Password'
于 2013-10-10T05:03:28.793 回答
1

->setTo 部分丢失了!那解决了它。

  $mail = \Swift_Message::newInstance()
            ->setSubject($message->getSubject())
            ->setFrom($message->getEmail())
            ->setTo("me@gmail.com")
            ->setBody($message->getBody());
于 2013-08-28T18:59:19.657 回答
-1

首先,当您设置spool: { type: memory }它意味着您实际上想要通过运行 spool 命令手动发送电子邮件php app/console swiftmailer:spool:send:因此,移除该阀芯线会有所帮助。

其次,您需要正确配置您的邮件主机。出于开发目的,我强烈建议您使用诸如SendGrid之类的服务并按照Symfony2 邮件设置教程中的详细说明对其进行配置

本教程还包含有关如何在 Symfony2 中正确设置邮件服务以及如何构建邮件模板的详细信息。

第三,如果你想坚持使用Gmail,那么正确的数据是:

mailer_transport: smtp
mailer_host: smtp.gmail.com
mailer_user: your_gmail_address@gmail.com
mailer_password: 'your_gmail_password'
mailer_port: 587
于 2017-01-16T13:16:48.103 回答