使用swiftMailer SMTP和Debian发送邮件

时间:2015-03-17 21:34:45

标签: symfony smtp debian swiftmailer

我有一个在Debian 7 VM上运行的symfony应用程序。我试图使用swiftMailer发送邮件。运行代码时似乎都没问题但没有收到电子邮件。我错过了什么?

控制器:

$message = \Swift_Message::newInstance()
        ->setSubject('Hello Email')
        ->setFrom('send@example.com')
        ->setTo('name.lastname@gmail.com')
        ->setBody('hello');


$mailer = $this->get('mailer');

if (!$mailer->send($message, $failures)) {
    echo "Failures:";
    print_r($failures);
    return "ko";
} else {
    return 'email sent successfully';
}

这总是返回"电子邮件已成功发送"。

config.yml:

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

parameters.yml:

mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null

php.ini:

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = 127.0.0.1
; http://php.net/smtp-port
smtp_port = 25

2 个答案:

答案 0 :(得分:0)

如果您不知道发生了什么,请始终考虑日志,您可以使用logging选项为true,以获得一些反馈,希望您能获得有关该问题的更多信息http://symfony.com/doc/master/reference/configuration/swiftmailer.html#logging

答案 1 :(得分:0)

要发送电子邮件,您必须设置postfix等邮件服务器。

您还可以查看以下有关从localhost发送电子邮件的主题:

How to send email from localhost using PHP on Linux