3

私はこの件に関して見つけることができるドキュメントをすべて調べましたが、これを理解することはできません. 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_domainandAPI_KEYは適切な値に置き換えられます。これらが正しいことをトリプルチェックしました。何度もアプリを再構築しましたlauncher rebuild app

談話管理 UI には、次の設定が表示されます。

ここに画像の説明を入力

ただし、メールを送信しようとすると、次のようなポップアップが表示されます。

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)

しかし、管理者メール UI の [スキップ] タブを確認すると、[スキップの理由] が [SendGrid[Sender] 550 Unauthenticated senders not allowedの認証の問題] であることがわかります。どうすればこれを解決できますか?

4

2 に答える 2

0

「認証されていない送信者は許可されていません」は、システムが AUTH コマンドを送信していないことを明示的に意味する SendGrid 固有のエラーです。したがって、認証プレーンが設定されていても、何かがそれをオーバーライドしており、SendGrid への接続時に認証を試みていません。

于 2016-11-30T00:24:56.190 に答える