메일 제공업체를 변경하려다 Discourse가 망가졌습니다

여러분 안녕하세요

개인적으로 마이크로 서버 중 하나에 Docker로 설치한 Discourse 포럼을 약 1년 동안 운영해 왔습니다.
2일 전쯤 URL을 forum.sanctuary-rts.com에서 forum.sanctuaryshatteredsun.com으로 변경했습니다.

그리고 컨테이너/app.yml 설정을 확인하던 중

최근에 Sendinblue 구독(대량 이메일/마케팅용)을 구매했으니, 현재 사용 중인 무료 제공자 SendGrid 대신 API 정보를 그것으로 수정하면 어떨까 하고 생각했습니다.
…

정말 큰 실수였습니다.

곧 Sendinblue가 API가 별도의 플랜이었기 때문에 이메일 전송을 제한(throttling)하고 있다는 사실을 알게 되었고, 관련 필드들을 모두 되돌렸습니다:

DISCOURSE_SMTP_ADDRESS: smtp.sendgrid.net
DISCOURSE_SMTP_USER_NAME: apikey
DISCOURSE_SMTP_PASSWORD: *********
DISCOURSE_SMTP_ENABLE_START_TLS: true
DISCOURSE_SMTP_DOMAIN: sanctuaryshatteredsun.com
DISCOURSE_NOTIFICATION_EMAIL: REDACTED

(물론 마지막 두 필드는 새 도메인을 위해 유지했으며, 나머지는 이전에 1년 동안 정상적으로 작동했던 동일한 값들입니다)

하지만 이제 Discourse와 SendGrid 모두 모든 항목이 정상(green)으로 표시되고 있습니다.

하지만 실제 이메일은 전혀 전송되지 않습니다.

SendGrid 측에서는 아무것도 변경하지 않았습니다.

제 설정에서 무엇이 잘못되었나요? 왜 이런 일이 발생하는 건가요?

DISCOURSE_NOTIFICATION_EMAIL이 DISCOURSE_SMTP_DOMAIN과 동일한 도메인을 사용해야 한다는 말을 들었습니다. 이것이 사실인가요?

sanctuaryshatteredsun.com은 실제로 메일 도메인으로 설정되어 있지 않습니다.

이를 가능하게 하려면 무엇을 해야 하나요? 아니면 제가 이미 보유하고 있는 다른 이메일 도메인을 사용할 수 있을까요?

아니요. 하지만 알림 이메일은 마크 메일 서비스가 발송하도록 구성된 이메일이어야 합니다. 또한 도메인 이름을 변경했다면 도메인 이름 변경 또는 Discourse 이름 변경을 확인해 보세요.

네, 제가 따랐던 가이드가 그거예요. 감사합니다!

that your mark service is configured to send for.

이건 무슨 뜻이에요?

mark service가 뭔가요? mail service를 말씀하시는 건가요? 아마 그쪽이 문제일 것 같아요.
sendgrid에서 sanctuary-rts.com에서 메일을 보내도록 설정되어 있는지 확인해 볼게요.

매우 밀접하게 관련된 또 다른 질문입니다.

Sendgrid에서 도메인을 인증하면 앞쪽에 불필요한 문자열이 붙은 채로 인증된 도메인으로 표시됩니다:


DISCOURSE_NOTIFICATION_EMAIL에는 불필요한 문자열이 포함된 버전(em7251.enhearten-media.com)을 사용해야 하나요, 아니면 없는 버전(enhearten-media.com)을 사용해야 하나요?

네, 수정했습니다!

DISCOURSE_NOTIFICATION_EMAIL에 REDACTED를 설정하고, 해당 도메인과 이메일을 SendGrid에 설정했습니다. SendGrid에 이전 도메인과 이메일이 설정되어 있었는데, 그게 문제였습니다.

감사합니다!

멋지네요! 무언가를 해결됨으로 표시할 수 있나요? 체크박스를 보려면 세 개의 점을 클릭해야 할 수도 있습니다.