Digital Ocean과 Mailgun을 사용하여 발신 이메일을 처리하도록 Discourse 트라이얼 서비스를 설정했습니다. Digital Ocean IP 주소를 가리키는 적절한 MX 레코드가 있는 도메인을 등록해 두었습니다. Discourse에서 발신 및 수신 이메일이 모두 정상적으로 작동합니다. 주제에 대한 답변은 알림이 설정된 사용자에게 발신 이메일을 생성하며, 테스트 사용자는 해당 이메일에 답변할 수 있고 게시글이 Discourse에 표시됩니다. 지금까지는 문제가 없습니다.
위와 같이 POSTCONF_always_bcc: 옵션을 추가해 보았지만 작동하지 않는 것 같습니다. ‘app’ 부분은 Mailgun을 통해 이메일을 보내는 방법을 알고 있지만( app.yml에 Mailgun 서버의 사용자 이름과 비밀번호가 포함되어 있음), ‘mail-receiver’ 부분이 Mailgun을 통해 이메일을 제대로 보내지 못하는 것 같습니다. mail-receiver 설정 파일에 이 정보를 입력하는 방법에 대한 예시를 본 적이 없습니다.
always_bcc 옵션이 읽히고 처리되고 있다는 것은 알고 있습니다. 다음을 입력하면:
./launcher enter mail-receiver
그런 다음
mailq
을 실행하면, 전송을 시도 중인 제가 보낸 테스트 메시지가 큐에 있는 것을 볼 수 있습니다. “-Sender/Recipient-------” 열에는 테스트 메시지가 온 주소, "(unknown mail transport error)"라는 문구, 그리고 always_bcc 설정에 넣었던 이메일 주소가 표시됩니다.
수신 메시지를 어떻게 필터링할 수 있을지 기대했습니다. 예를 들어 postmaster@mydomain 또는 admin@mydomain으로 보내진 메시지는 Discourse에서 처리되지 않고, 대신 Mailgun을 통해 공개 인터넷으로 내 gmail 주소로 재전송되도록 하고 싶습니다. 아마도 @satonotdead 사용자가 하려던 것이 바로 이런 것일 것입니다.
이 작업을 수행하는 방법에 대한 힌트가 있다면 감사하겠습니다!