Problemas no envio de e-mails ocorreram em diferentes provedores de e-mail em notification_email e reply_by_email_addresses

Olá, recentemente encontrei alguns problemas ao configurar o remetente de e-mail como QQ Exmail (também conhecido como 腾讯企业邮箱). Minha configuração de e-mail está listada abaixo:

DISCOURSE_SMTP_ADDRESS: smtp.exmail.qq.com
DISCOURSE_SMTP_AUTHENTICATION: login
DISCOURSE_SMTP_ENABLE_START_TLS: true
DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: username@domain.tld
DISCOURSE_SMTP_PASSWORD: ***

Também configurei o notification_email no painel de configurações.

No entanto, ao tentar enviar um e-mail de teste pelo painel, o sistema sempre retorna o erro 501 mail from address must be same as authorization user.

Verifiquei duas vezes se o DISCOURSE_SMTP_USER_NAME e o notification_email são o mesmo endereço de e-mail, e minhas configurações SMTP também passaram no teste em SMTP Test Tool.

Como atualmente não tenho ideia de qual parte da minha configuração de e-mail está causando o problema, há alguma maneira de eu depurar o erro ou verificar o e-mail bruto que a instância do Discourse tentou enviar, para que eu possa diagnosticar se a seção from: do e-mail está correta?

Qualquer ajuda ou comentário será muito apreciado.

Aqui estão algumas postagens que referenciei para configurar o e-mail:
https://community.jenkins-zh.cn/t/discourse/202

Após algumas investigações, acredito que esse problema pode estar relacionado ao conflito entre notification_email e reply_by_email_addresses. Quando as duas variáveis estão configuradas, o e-mail de saída parece usar reply_by_email_addresses como endereço from:, o que pode estar relacionado ao código abaixo:

No entanto, ao alterar o e-mail de notificação para o Office 365 com configuração SMTP semelhante, o e-mail é enviado sem nenhum problema.

  #DISCOURSE_SMTP_ADDRESS: outlook.office365.com
  #DISCOURSE_SMTP_AUTHENTICATION: login
  #DISCOURSE_SMTP_ENABLE_START_TLS: true
  #DISCOURSE_SMTP_PORT: 587
  #DISCOURSE_SMTP_USER_NAME: 365@domain.tld
  #DISCOURSE_SMTP_PASSWORD: ***

Acredito que a razão para esse comportamento diferente seja que o Office 365 não verifica o campo from: ao enviar e-mails, mas apenas reescreve o campo from: para o nome de usuário da conta do Office 365 ao enviar. Já o QQ Exmail verifica o campo from: do e-mail enviado, e um campo from: incorreto pode causar o erro 501 mencionado acima.

1 curtida