簡體   English   中英

AWS SES 的 Discourse 電子郵件配置

[英]Discourse email configuration for AWS SES

我正在嘗試在 AWS EC2 實例上設置 Discourse,但在通過 AWS SES 發送電子郵件時遇到問題。

首先,我在 AWS SES 上設置並確認了電子郵件和域(不是在沙盒模式下),我可以從 AWS SES 儀表板成功發送測試電子郵件,也可以通過在 Discourse 機器實例上運行的 postfix 手動發送。

我試圖按照此處的說明進行操作:http: //stroupaloop.com/blog/discourse-setup-using-aws/ (盡管現在意識到這已經很老了,所以現在的配置可能有所不同)並且還發現Discourse SES AWS 正在運行請使用 app.yml 文件示例- 但此配置也不適合我。

有關信息,我正在通過執行...來編輯 app.yml 文件。

$ sudo ./launcher stop app
$ sudo nano ./containers/app.yml

[進行編輯和保存]

$ sudo ./launcher bootstrap app

[它告訴我它已經正確引導]

$ sudo ./launcher start app

[我現在可以查看討論站點,但無法登錄任何帳戶,因為沒有發送確認電子郵件]

目前我的 app.yml 文件中有這個(敏感信息被替換):

  DISCOURSE_SMTP_ADDRESS: email-smtp.eu-west-1.amazonaws.com
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: XXXXXXXXXXXXXXXX
  DISCOURSE_SMTP_PASSWORD: XXXXXXXXXXXXXXXXXXXX
  DISCOURSE_SMTP_ENABLE_START_TLS: true           
  DISCOURSE_SMTP_AUTHENTICATION: "login"
  DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none
  DISCOURSE_SMTP_DOMAIN: mydomain.net
  DISCOURSE_SMTP_FROM_ADDRESS: me@mydomain.net

此外,在 SES 發送統計儀表板中,我什至沒有看到它正在嘗試發送電子郵件。

因此,即使是一個好的起點,也可以知道 Discourse docker 容器中某處是否有電子郵件日志文件,我可以查看該文件以了解可能是什么問題。

任何關於我在這里出錯的地方的幫助將不勝感激。

我有一個類似的問題,我通過編輯app.yml並將這一行添加到末尾來修復它(默認情況下該行被注釋掉):

- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"

您必須將info@unconfigured.discourse.org替換為與您的 SES 憑證關聯的經過驗證的電子郵件地址。 您可以在 AWS -> SES -> Identity Management -> Email Addresses 下檢查您已驗證的電子郵件地址身份,必須驗證驗證狀態。 如果您設法從這里發送和接收測試電子郵件,您可能已經設置好了。

應用這些更改后,重新運行安裝腳本以獲取更改:

sudo ./discourse-setup

希望這對你有用!

我使用 bitnami 在 ec2 中部署了我的話語,在嘗試了幾個小時后,我能夠使用話語配置 SES 沙箱,這就是我所做的

  1. 在 aws 控制台中創建 SMTP 憑據
  2. 我在 aws 控制台中驗證了兩封電子郵件,因為電子郵件服務在沙箱中,因此必須驗證發件人和收件人的電子郵件
  3. 我將 smtp 設置添加到這個文件/apps/discourse/htdocs/config/discourse.conf看起來像這樣
db_name = bitnami_discourse
db_host = /opt/bitnami/postgresql
db_port = 5432
db_pool = 25
hostname = 3.89.1xx.xx
db_username = bn_discourse
db_password = “xxxxxxxxxx”
redis_port = 6379
redis_path = /opt/bitnami/redis/var/run/redis.sock

smtp_address =“email-smtp.us-east-1.amazonaws.com”
smtp_port = 587
smptp_security = ssl
smtp_domain = 3.89.1xx.xx
smtp_user_name = ‘xxxxxxxxxxxxxxxxx’
smtp_password = ‘xxxxxxxxxxxxxxxxxxxxxxxxxxxx’
from_address = youremailaddress@example.com

smptp 用戶名和密碼與您在配置此文件后在步驟 1 中獲得的 SMTP 憑據相同確保通過在 /apps 之外運行此命令來重新啟動服務器

sudo /opt/bitnami/ctlscript.sh restart

這是一個參考

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM