我正在使用Swiftmailer通过与Symfony的联系表单发送邮件。我的ISP允许我使用我的邮件帐户信息(用户名,密码和smtp)从远程服务器发送邮件。
我的问题是,当我从我的开发站点(从我的桌面服务器)发送邮件时,我可以执行此操作并发送邮件,但在生产环境中,Swiftmailer引发一个异常,说客户端主机被拒绝(代码554) 5.7.1)并且未能发送邮件。我试图用app/console swiftmailer:email:send
进行调试,我得到了同样的错误:
Exception occurred while flushing email queue:
Expected response code 220 but got code "554",
with message "554 5.7.1 <unknown[here-example-ipv6]:49545>:
Client host rejected: Access denied " [] []
ipv6(here-example-ipv6)对应我宿主的dns,我还没有配置,但我不明白为什么Swiftmailer认为这个ip对应于客户端主机,我的配置似乎(app /config/config.yml和parameters.yml)很好,因为我的桌面工作正常。任何帮助将不胜感激,谢谢。
答案 0 :(得分:0)
好的,我明白了。我对错误消息感到困惑,因为我以为它来自Switmailler,但是它来自我的ISP邮件服务器。 问题是,当您想从远程位置发送邮件时,我的ISP需要激活SSL加密。 所以我为Swfitmailler配置增加了两个参数:
port: 465
encryption: ssl
现在没关系。但由于我是在生产环境中进行测试,因此必须清除缓存才能使更改生效。