加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – symfony swiftmailer:邮件不是在prod-environment中发送

发布时间:2020-12-13 22:25:06 所属栏目:PHP教程 来源:网络整理
导读:我有一个symfony 2.8应用程序,实现了fosuserbundle.在开发环境中,会发送注册确认邮件,但不会在prod环境中发送.没有日志消息,并且smpt配置正确. sf版本:2.8.1 swiftmailer-bundle version:current(与sf版本兼容; 2. *在composer json中) fosuserbundle:1.3
我有一个symfony 2.8应用程序,实现了fosuserbundle.在开发环境中,会发送注册确认邮件,但不会在prod环境中发送.没有日志消息,并且smpt配置正确.

sf版本:2.8.1
swiftmailer-bundle version:current(与sf版本兼容; 2. *在composer json中)
fosuserbundle:1.3.5(作曲中的*)

DEV-配置:

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

但邮件尚未发送.在开发环境中,它也适用于终端.

解决方法

我尝试了 here提到的所有解决方案,
这是“gethostbyname”和“更改Gmail的smtp”但它没有用.

经过几天的挖掘,我找到了一个解决方案,你需要将加密更改为tls,并在config中的stream_options中添加ssl.根据安全角度不建议这样做,但它适用于我的情况.

parameters.yml

mailer_prod_encryption: tls

config.yml

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读