Swiftmailer不在localhost中工作?

时间:2016-10-20 06:51:13

标签: symfony swiftmailer

我正在使用symfony 3.0版本: 的 Config.yml

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

Parameters.yml

mailer_transport: smtp
    mailer_host: localhost
    mailer_port: 25
    mailer_user: pankaj@acb.com
    mailer_password: abc123

我运行以下命令发送邮件:

php Console Swiftmailer:spool:send 

处理默认邮件程序....发送了0封电子邮件

php Console Swiftmailer:email:send

发送了1封电子邮件

app.ERROR:刷新电子邮件队列时发生异常: 无法与主机127.0.0.1建立连接[已尝试进行 以其访问权限禁止的方式访问套接字。 #10013]

我也尝试通过代码:

$message = \Swift_Message::newInstance()
                    ->setSubject('Hello Email')
                    ->setFrom('pankaj@acb.com')
                    ->setTo('ashish@acb.com')
                    ->setBody('good jb');            
            $this->get('mailer')->send($message);

但我没有得到任何异常/错误/消息。

任何人都可以建议我该怎么办?感谢

3 个答案:

答案 0 :(得分:1)

为了在开发时测试电子邮件,我建议您使用mailcatcher。此工具的设置为:

mailer_transport: smtp
mailer_host: localhost
mailer_port: 1025

然后您可以在浏览器中验证电子邮件:(使用默认设置)

http://127.0.0.1:1080

答案 1 :(得分:0)

您可能没有权限来访问您的应用电子邮件帐户。您需要更改此内容,或者您​​可以使用Gmail。

看看这里: How to Use Gmail to Send Emails

为您的应用授予访问权限: Less Secure Apps Access

答案 2 :(得分:0)

<强> Config.yml

# Swiftmailer Configuration
swiftmailer:
    transport: "%mailer_transport%"
    host:      "%mailer_host%"
    username:  "%mailer_user%"
    password:  "%mailer_password%"
    port:      %mailer_port%
    spool:     { type: memory }
    encryption : "%encryption%"

<强> Parameters.yml

mailer_transport: smtp
    mailer_host: smtp.office365.com
    mailer_port: 587
    mailer_user: abc@domain.com
    mailer_password: 
    encryption : tls

我确实在两个文件中设置了以下设置。现在它使用localhost环境为我工作。