我已经查看了我可以在这个问题上找到的每一个文档,并且无法弄清楚这一点。 必须是那些使用Sendgrid作为话语博客的SMTP的人,但我无法弄清楚如何。
这是我的app.yml设置:
env:
LANG: en_US.UTF-8
# DISCOURSE_DEFAULT_LOCALE: en
UNICORN_WORKERS: 3
DISCOURSE_DEVELOPER_EMAILS: 'admin@my_domain.com'
DISCOURSE_HOSTNAME: 'my_domain.com'
DISCOURSE_RELATIVE_URL_ROOT: /forum
## TODO: The mailserver this Discourse instance will use
DISCOURSE_SMTP_ADDRESS: smtp.sendgrid.net
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: apikey
DISCOURSE_SMTP_PASSWORD: API_KEY
DISCOURSE_SMTP_ENABLE_START_TLS: true
显然,my_domain
和API_KEY
会替换为正确的值。我已经三次检查这些事情是否正确。我已经多次通过launcher rebuild app
重建了应用程序。
话语管理员界面显示以下设置:
但是,当我尝试发送任何电子邮件时,我会看到一个弹出窗口:
There was a problem sending the test email. Please double-check your mail settings, verify that your host is not blocking mail connections, and try again.
服务器上的实际日志非常有用:
Sent mail to test@my_email.com (91.2ms)
Completed 422 Unprocessable Entity in 287ms (Views: 0.2ms | ActiveRecord: 0.4ms)
但是当我检查" Skipped"管理员电子邮件用户界面的标签,我看到"跳过原因"是[Sender] 550 Unauthenticated senders not allowed
- 所以我认为这是SendGrid的身份验证问题。我该如何解决这个问题?