Symfony的4 SwiftMailer的Gmail:电子邮件不会发送

问题描述 投票:5回答:5

我目前工作的一个Symfony的4应用程序,我需要发送电子邮件throught斯威夫特梅勒。当我发送一封电子邮件,我收到的电子邮件假脱机,但我没有在我的Gmail邮箱得到它。我可以在我的gmail的配置不安全的应用程序。

这是.ENV文件我的邮件地址:MAILER_URL = Gmail的://ep****@gmail.com:PASSWORD @本地

这是我的swiftmailer.yaml:

    #config/packages/swiftmailer.yaml
    swiftmailer:
        url: '%env(MAILER_URL)%'
        spool: { type: 'memory' }

这是我的控制器功能:

src/Controller/AccountController.php

After completing a form

这是我所遵循的文档:http://symfony.com/doc/current/email.html

我已经检查了这些问题,但他们不给我答案:How to send emails with Symfony 4 Swiftmailer from a local machine running on Windows 10?mailer symfony 4 not working

拜托,我需要帮助。整天我看的解决方案。我没有得到任何错误,但我没有收到邮件。提前致谢。任何链接可以帮助我。

php gmail swiftmailer symfony4
5个回答
9
投票

问题解决了!!将这个配置,而不是使用URL环境变量

swiftmailer:
    transport:        gmail
    username:         ****@gmail.com
    password:         *******
    host:             localhost
    port:             465
    encryption:       ssl
    auth-mode:        login
    spool: { type: 'memory' }
    stream_options:
        ssl:
            allow_self_signed: true
            verify_peer: false
            verify_peer_name: false

1
投票

迟到了,但是URL格式需要全面的设置。我不认为SwiftMailer分析URL来检测特定的传输(如gmail)本身配置复位。

下面的格式为我工作:

MAILER_URL=smtp://smtp.gmail.com:587?encryption=tls&username=USERNAME&password=PASSWORD

0
投票

MAILER_URL必须经过网址编码。退房的文档:https://symfony.com/doc/current/email.html#configuration

如果您的密码有它的一些特殊字符,需要进行URL编码,它不会工作。

希望能帮助到你。


0
投票

根据我的经验,你将需要启用“Allow unsafe logins”在谷歌套件或Gmail帐户,因为他们阻止通过SMTP访问。


0
投票

注释掉后台打印线

swiftmailer:
url: '%env(MAILER_URL)%'
#spool: { type: 'memory' }
© www.soinside.com 2019 - 2024. All rights reserved.