无法在symfony2.3应用程序中使用swiftmailer通过gmail发送电子邮件

时间:2014-07-31 15:43:41

标签: symfony swiftmailer

我尝试使用gmail配置发送电子邮件,但我无法做到。 我没有任何错误;我还检查了symfony日志文件。 什么都没有崩溃,但没有发送电子邮件:( 我还运行了swiftmailer:spool:send命令(也许电子邮件在假脱机中),结果我收到了:发送了0封电子邮件。

我在config_dev.yml中使用开发环境:

swiftmailer:
    transport: gmail
    username:  myuser@gmail.com
    password:  mypass

在控制器中(仅用于测试):

$message = \Swift_Message::newInstance()
        ->setSubject('Hello Email')
        ->setFrom('send@example.com')
        ->setTo('myemail@mydomain.com')
        ->setBody(
        "some test body"
        )
;
$this->get('mailer')->send($message);

提前致谢

更新: 我切换到prod环境,结果相同:没有错误......直到我运行命令,我收到了这个错误:

[Swift_TransportException]                                                   
Connection could not be established with host smtp.gmail.com [Unable to fin  
d the socket transport "ssl" - did you forget to enable it when you configu  
red PHP? #50346848]                                                          

然后,我在php.ini

中取消注释这一行
extension=php_openssl.dll

但没有,结果相同:(

我还将内存修改为swiftmailer配置文件,电子邮件在缓存中:

app\cache\prod\swiftmailer\spool

PS:我不在任何代理之后

1 个答案:

答案 0 :(得分:0)

您是否检查了探查器(您可以知道是否发送了一些电子邮件,或者至少是假脱机的)?你有没有尝试过prod环境?

我记得Swiftmailer在我做过的项目中对dev env的类似问题。为了测试它,我将spool: { type: memory }更改为spool: { type: file }并检查了dev缓存目录中的邮件。