Swiftmailer 不从 Hyper-V 虚拟机发送

Swiftmailer does not send from Hyper-V virtual machine

Ubuntu18 的 Hyper-V 机器有一个带有 SwiftMailer 的 Symfony 4.3 应用程序。尝试使用 php bin/console swiftmailer:email:send 从命令行发送电子邮件导致

[OK] 1 emails were successfully sent.

虽然 mail.log 包含这个

localhost sm-mta[5847]: xBBFThub005847: localhost [127.0.0.1] did not issue MAIL/EXPN/VRFY/ETRN during connection to MTA-v4

并且从未收到电子邮件。

.env.local 包含

MAILER_URL=gmail://username@gmail.com:password@localhost?encryption=tls&auth_mode=oauth

.../config/packages/swiftmailer.yaml:

swiftmailer:
    default_mailer: memory
    mailers:
        memory:
            sender_address: 'admin@bogus.info'
            transport:        smtp
            spool: { type: 'memory' }
        spooler:
                sender_address: 'admin@bogus.info'
                transport:        smtp
                spool:
                    type: file
                    path: '%kernel.project_dir%/var/spool'

使用与主机相同的配置确实可以投递邮件。

虽然最终的解决方案可能过度,但它是有效的。我首先尝试安装 sendmail,但没有成功。清除它并在 this tutorial on using postfix to relay to gmail. When a test message failed I followed the answer provide by kjones at this site 之后安装 postfix。在 gmail 上允许 "Access for less secure apps setting",现在一切正常。

所有这些都是为了练习上线 运行!