Php symfony swiftmailer:未在prod环境中发送邮件
我有一个symfony 2.8应用程序,实现了fosuserbundle。在Php symfony swiftmailer:未在prod环境中发送邮件,php,symfony,fosuserbundle,swiftmailer,Php,Symfony,Fosuserbundle,Swiftmailer,我有一个symfony 2.8应用程序,实现了fosuserbundle。在dev环境中,会发送注册确认邮件,但不会在prod环境中发送。没有日志消息,smpt配置正确 sf版本:2.8.1 swiftmailer捆绑包版本:当前(与sf版本兼容;2.*在composer json中) fosuserbundle:1.3.5(*在composer中) 开发配置: imports: - { resource: config.yml } framework: router:
dev
环境中,会发送注册确认邮件,但不会在prod
环境中发送。没有日志消息,smpt配置正确
sf版本:2.8.1
swiftmailer捆绑包版本:当前(与sf版本兼容;2.*
在composer json中)
fosuserbundle:1.3.5(*
在composer中)
开发配置:
imports:
- { resource: config.yml }
framework:
router:
resource: "%kernel.root_dir%/config/routing_dev.yml"
#strict_requirements: true
profiler: { only_exceptions: true }
web_profiler:
toolbar: true
intercept_redirects: true
assetic:
use_controller: true
有人有同样的问题吗
编辑
我刚刚在prod
env:php-sf--env=prod-swiftmailer:email:send
终端输出:
#!/usr/bin/env php
From: test@antondachauer.de
To: mail@antondachauer.de
Subject: test
Body: test
Sent 1 emails
但邮件尚未发送。在
dev
env中,它也可以在终端中工作。我尝试了所有提到的解决方案,
这是“gethostbyname”和“更改Gmail的smtp”,但它不起作用
经过几天的挖掘,我找到了一个解决方案,您需要将加密更改为tls,并在配置中的stream_选项中添加ssl。从安全的角度来看,不建议使用它,但在我的情况下它是有效的
参数.yml
config.yml
prod环境是否在同一台服务器上?您是否更改了Swiftmailer的任何标准配置设置,和/或您是新安装的2.8.1版本,还是从以前的版本升级?您使用的是什么操作系统?prod环境位于同一台服务器上(Ubuntu 14.04)。我已从2.3.x更新,我使用默认的swiftmailer配置您是否尝试清除缓存?在
config*.yml
文件中的swiftmailer
的配置是什么?它用线轴吗?它是如何链接到FOSUserBundle的?是否所有电子邮件都从未发送过,或仅来自FOSUserBundle的电子邮件?查看app/logs/prod.log
可能会有所帮助
mailer_prod_encryption: tls
swiftmailer:
transport: "%mailer_dev_transport%"
host: "%mailer_dev_host%"
username: "%mailer_dev_user%"
password: "%mailer_dev_password%"
encryption: "%mailer_dev_encryption%"
auth_mode: "%mailer_dev_auth_mode%"
spool: { type: memory }
port: 25
stream_options:
ssl:
allow_self_signed: true
verify_peer: false