重构邮件:测试 rake 任务输出

哇,这是一个糟糕的更改。

enable_starttls要求使用 starttls,但 enable_starttls_auto 是机会主义的——它只会在提供 TLS 时协商 TLS。

如果邮件服务器是通过初始 TLS 连接的,它将不会提供 starttls:

○ → openssl s_client -connect localhost:5587 -starttls smtp
250 CHUNKING
EHLO localhost
250-testmailrelay
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250 CHUNKING

他们到底为什么要这么做?:facepalm:
这里的困难在于,我们一开始就不应该提供这种配置,它应该像这样:

DISCOURSE_SMTP_TLS_MODE = starttls_auto # [ none | starttls | starttls_auto (default) | tls ]