“이메일 유형” 필드(예: user_watching_first_post)를 클릭하면 원래 수신자에게서 받은 바운스 메시지의 세부 정보가 표시되도록 설계된 것 같습니다.
하지만 제 셀프호스팅 사이트에서는 위에서 언급한 오류 메시지가 표시됩니다. 이 문제를 해결할 수 있는 방법이 있을까요?
감사합니다.
“이메일 유형” 필드(예: user_watching_first_post)를 클릭하면 원래 수신자에게서 받은 바운스 메시지의 세부 정보가 표시되도록 설계된 것 같습니다.
하지만 제 셀프호스팅 사이트에서는 위에서 언급한 오류 메시지가 표시됩니다. 이 문제를 해결할 수 있는 방법이 있을까요?
감사합니다.
맞습니다. 제 호스팅된 Discourse 사이트에서 방금 확인해 보았는데, 아무 문제 없이 작동하고 있습니다. 만약 여러분의 사이트가 최신 버전의 Discourse를 사용 중이라면, 문제가 메일 서버가 바운스 메시지를 전달하는 방식과 관련이 있는 것 아닌지 궁금합니다.
감사합니다. 발신 메일에는 Mailgun을 사용하고 있습니다. Discourse에서 권장하는 설정을 사용한 것 같습니다.
수신 메일에는 이 설정을 사용하고 있습니다: Configure direct-delivery incoming email for self-hosted sites with Mail-Receiver 하지만 설치 이후로 한 번도 업데이트하지 않았습니다. 이것이 문제일까요? Discourse의 경우 ./launcher rebuild app을 사용하는 것처럼, ./launcher rebuild mail-receiver를 사용해야 하나요?
네, 그게 업그레이드 방법입니다. 지난 업데이트가 꽤 됐을 것 같은데, 좋은 첫 단계는 이를 업그레이드하고 discourse를 업데이트하는 것입니다.
둘 다 업그레이드했지만 여전히 동일한 오류가 발생합니다. (생각컨대) 업그레이드 이후 수신된 이메일에서도 마찬가지입니다. 다른 아이디어가 있을까요?
여기서도 같은 문제가 발생합니다. 셀프호스팅이며 최신 버전으로 업데이트되어 있습니다. 바운스 처리는 권장된 방식으로 처리되고 있습니다. 올바른 바운스 처리 방식으로 변경하기 전의 링크는 정상적으로 작동합니다.
네, 아마도 Discourse가 Mailgun으로부터 해당 메시지를 받지 못하고 있는 것 같습니다. 웹훅이 어떻게 작동하는지는 정확히 모르지만, 임시/영구 실패가 발생했다는 사실만 Discourse에 알리고 실제 바운스 메시지는 보내지 않는다고 추정합니다.
이 Discourse 기능을 Mailgun과 함께 작동시킬 수 있는 방법이 있을까요?
적어도 오류 코드와 메시지를 표시할 수 있어야 합니다:
SMTP 오류 코드와 SMTP 오류 메시지는 모두 보존됩니다
“code”: 550,
“address”: “'baz@example.com”,
“error”: “Message was not accepted – invalid mailbox. Local mailbox 'baz@example.com is unavailable: user not found”
https://documentation.mailgun.com/en/latest/api-bounces.html#examples
그렇지 않다면, 링크가 작동하지 않는 이유를 설명할 수 있는 적절한 오류 메시지는 필요합니다 ![]()
이 부분에 대한 작업이 진행되었는지 궁금합니다. 만약 진행 중이라면 정말 감사하겠습니다 ![]()
저는 Digital Ocean과 Mailgun(즉, 가장 많이 추천되는 서비스들)을 사용하고 있어서, 이 문제를 겪는 사람이 저뿐만은 아닐 것 같습니다.
제 테스트 결과, 많은 경우 바운스(bounce) 메일이 수신 측에 아예 전달되지 않는 것으로 보입니다. (한 건에 대해서만 연결 시도가 기록되어 있었고, 이는 즉시 중단되었습니다.) Return-Path 헤더가 설정되어 있는지 전혀 확인되지 않는데(설정되어야 하는 건가요?), 이는 대부분의 경우 메일이 반환조차 되지 않는다는 생각을 하게 만듭니다.
여기서도 여전히 문제가 있습니다. 이전에 말씀드린 것과 달리, 현재 이 링크들 중 어느 것도 작동하지 않는 것으로 보입니다. 사이트 출시 초기까지 거슬러 올라가도 마찬가지입니다. 처음에는 우리가 바운스 메일을 제대로 처리하기 시작하기 전의 바운스에만 영향을 미치는 것으로 보였습니다(Configure VERP to handle bouncing e-mails).
오류 로그에 다음과 같은 경고가 쌓여 있는 것을 방금 확인했습니다:
Email can not be processed: Email::Receiver::AutoGeneratedEmailError
Received: from ...
for <bounce+f7e463.5f70e9-...@forum.example.com>; ...
Subject: Your message couldn't be delivered
아마도 이것이 Discourse에서 반송된 이메일에 대한 세부 정보가 없는 이유일 것입니다.
로그에서 해당 오류를 확인하지 못했지만 문제는 여전히 지속되고 있습니다. 반송된 이메일 목록의 항목에서 이메일 유형 값을 클릭하면 "An error occurred: Discourse::NotFound"라는 오류가 표시됩니다.
이미 선택되어 있었습니다. 로그를 조금 더 뒤로 거슬러 올라가 봤는데, 간혹 이메일 관련 메시지는 보이긴 하지만 말씀하신 메시지는 보이지 않습니다.
저도 Mailgun에서 같은 문제를 겪고 있습니다. 호스트가 다르니 그쪽 문제는 아닌 것 같네요!
VERP 설정을 위한 Mailgun 설정 지침에 문제가 있는 건 아닌지 궁금합니다:
이것은 Discourse가 바운스(bounce) 응답을 처리하지 않았을 때 발생하는 예상되는 동작입니다. Discourse가 바운스를 수신하는 경우 해당 기능은 정상적으로 작동하지만, 그렇지 않으면 모든 바운스에 대해 해당 응답이 표시됩니다.
Configure VERP to handle bouncing e-mails 에 따라 테스트를 실행하여 다시 확인해 주시겠습니까?
그 경우 더 나은 메시지가 있으면 좋겠습니다.
Discourse가 Mailgun 웹훅을 통해서만 바운스에 대해 알게 되는 경우, 바운스의 세부 정보가 Discourse로 전송되지 않는다는 뜻인가요? 맞습니까?
만약 맞다면, Discourse가 수신한 바운스와 동일한 위치에 기록되고 표시되도록 해당 세부 정보를 Discourse로 전송하는 방법이 있을까요? Mailgun API를 통해 이것이 가능할 것 같습니다 ("Discourse::NotFound" error when click "Email Type" field on admin/email/bounced - #8 by Jonathan5).
어떤 상황에서 Discourse가 외부 이메일 서비스가 아닌 자체적으로 바운스를 처리합니까? (Discourse가 이메일을 바운스/거절할 수 있다는 것은 알고 있지만, 의도된 이메일 수신자로부터 수신된 바운스 메시지를 처리하는 것을 의미합니다.)
동의합니다. 실제로 깨져 있지 않은 것은 깨진 것처럼 보여서는 안 됩니다. Discourse는 분명히 더 안심되는 메시지를 제공할 수 있을 것입니다.