我一直在使用Swiftmailer发送Symfony 2电子邮件。
这是app / config / config.yml
中的swiftmailer配置swiftmailer:
transport: gmail
username: myusername@gmail.com
host: smtp.gmail.com
password: mypassword
我还配置了我的xampp localhost来发送电子邮件。
我有一个用户输入电子邮件地址(最多5封电子邮件),主题和消息的表单。对于提交表单的前几个测试,发送的电子邮件。我实际上也收到了电子邮件。但在那之后,我一再得到这个错误。
使用1个可能的身份验证器,无法使用用户名“myusername@gmail.com”在SMTP服务器上进行身份验证 500内部服务器错误 - Swift_TransportException
这边有什么问题?我也尝试停止我的xampp,然后重新启动它,但问题仍然存在。有没有人知道这里的问题是什么?
谢谢。
答案 0 :(得分:2)
您遇到此问题是因为您没有正确设置邮件主机。 首先,我强烈建议您使用SendGrid等服务,并按照此Symfony2 Mailing Setup Tutorial详细说明进行配置:
mailer_transport: smtp
mailer_host: smtp.sendgrid.net
mailer_user: your_sendgrid_username
mailer_password: 'your_sendgrid_password'
mailer_port: 587
本教程还包含有关如何在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
答案 1 :(得分:0)
我记得host
值被忽略,当transport
设置为gmail
时。关于您的问题,请确保您使用的是最新版本的SwiftMailer(v4.1.5),因为它已经修复。来自changelog:
通常,如果身份验证失败,则类型Swift_TransportException
的异常将会出现
被抛出。