Amazon SES의 샌드박스 모드에서는 모든 것이 정상적으로 작동했지만, Amazon에서 프로덕션 모드 접근을 거부했습니다.
MailJet을 사용해 보려고 했는데, 뭔가 놓치고 있는 것 같고 어떻게 해야 할지 감이 오지 않습니다.
제가 무엇을 잘못하고 있는지 아는 분이 계신가요?
Discourse에는 오류가 표시되지 않고 "메일 전송됨"이라고 표시됩니다.
SMTP 주소와 포트에 Telnet으로 접속할 수 있습니다.
MailJet 설정:
SPF/DKIM이 녹색(정상)입니다.
포럼 도메인이 활성화되어 있습니다.
그리고 제 zzz@gmail.com 계정도 활성화되어 있습니다.
제 app.yml 설정:
DISCOURSE_SMTP_ADDRESS: in-v3.mailjet.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: xxx (서브 계정 API에서 가져옴)
DISCOURSE_SMTP_PASSWORD: "yyy" (서브 계정 API에서 가져옴)
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (선택 사항, 기본값 true)
DISCOURSE_SMTP_DOMAIN: gmail.com
DISCOURSE_NOTIFICATION_EMAIL: zzz@gmail.com
pfaffman
(Jay Pfaffman)
9월 14, 2022, 10:00오후
2
Gmail.com에서 메일을 보낼 수 없습니다. 메일 hey에서 메일을 보내도록 설정한 도메인의 주소를 사용해야 합니다. SMTP 도메인은 호스트 이름이어야 하지만, 중요하지 않을 수도 있습니다(중요한 경우를 제외하고).
방금 SMTP_DOMAIN을 gmail.com에서 내 Route53 도메인으로 변경해 보았고, TLS 암호화를 제거해 보기도 했지만 여전히 작동하지 않습니다.
이렇게 설정하는 것이 맞나요?
지금 단계에서는 문제가 어디서 발생하는지 파악이 안 됩니다…
이런 식으로 설정했습니다:
DISCOURSE_SMTP_ADDRESS: in-v3.mailjet.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: xxx (서브 계정 API에서 가져옴)
DISCOURSE_SMTP_PASSWORD: "yyy" (서브 계정 API에서 가져옴)
DISCOURSE_SMTP_ENABLE_START_TLS: false # (선택 사항, 기본값은 true)
DISCOURSE_SMTP_DOMAIN: mydomain.net
DISCOURSE_NOTIFICATION_EMAIL: noreply@mydomain.net
pfaffman
(Jay Pfaffman)
9월 14, 2022, 10:13오후
4
그렇다면 Mailjet이 메일을 수락하고 있는 것입니다. 메일이 발송되지 않는 것인지, 아니면 수신함에서 거부되고 있는지(스팸 폴더를 확인해 보셨나요?)를 추측할 수 없습니다.
새로운 Discourse 설치에서 이메일 문제 해결 을 참고해 보세요.
네, 이 방법을 시도해 보았고 MailJet 전체를 재설정하고 키를 재생성해 보았습니다.
서로 다른 포트(25, 465, 587)를 TLS 사용 여부와 상관없이 시도해 봤지만 실패했습니다.
25번과 465번 포트의 경우, 적어도 Discourse에서는 작동하지 않는다고 알려주며, 465번 포트에서는 `250 OK queued as xxxx’라고 표시됩니다.
문제는 MailJet의 통계에서 해당 기간 동안 이메일이 하나도 전송되지 않았다는 점입니다.
pfaffman
(Jay Pfaffman)
9월 14, 2022, 11:32오후
6
키에는 문제가 없습니다. 문제점은 발송 주소인 것 같습니다.
Discourse가 전송 완료라고 표시했다면, Mailjet에서 수신을 승인한 것이므로 로그에 남아 있어야 합니다. mail-tester.com을 시도해 보셨나요?
음, 꽤 좋은 도구가네요…
처음에 시도해 봤는데 이메일이 도착하지 않았습니다.
MailJet에서 noreply@www.zzz.net에서 이메일을 보내려고 시도했다는 알림을 받았는데, 이는 트러블슈팅 절차에 따라 조금 전에 시도했던 변경 사항 중 하나였습니다.
www를 제거하여 사실상 이전 설정으로 되돌렸는데, 이번에는 작동했습니다… 왜 그런지는 영원히 알 수 없을 것 같습니다.
도와주셔서 감사합니다. Amazon SES가 저를 거부하기 전까지는 모든 것이 잘 진행되고 있었습니다. 그래서 대안을 찾아야 했죠.
현재 작동하는 설정은 다음과 같습니다:
DISCOURSE_SMTP_ADDRESS: in-v3.mailjet.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: xxx
DISCOURSE_SMTP_PASSWORD: "yyy"
DISCOURSE_SMTP_ENABLE_START_TLS: false # (선택 사항, 기본값 true)
DISCOURSE_SMTP_DOMAIN: mydomain.net
DISCOURSE_NOTIFICATION_EMAIL: noreply@mydomain.net