使用 swiftMailer SMTP 和 Debian 发送邮件

Sending mail with swiftMailer SMTP and Debian

我有一个在 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';
}

这总是返回 "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

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

为了发送电子邮件,您必须设置一个邮件服务器,例如 postfix

您还可以查看以下关于从本地主机发送电子邮件的帖子:

How to send email from localhost using PHP on Linux