Soluções para problemas de email em uma nova instalação do Discourse

Existem caracteres que devem ser evitados na senha SMTP? Se sim, a documentação pode mencionar isso.

Minha senha inicial não funcionou e resultou em um erro. Mudei a senha (editando app.yml) e depois reconstruí o aplicativo. Depois disso, consegui receber o e-mail “Confirme sua nova conta”.

O caractere suspeito no e-mail original foi: ]

Para a nova senha, deixei o Mailgun gerá-la para mim.

1 curtida

Olá Ted! Bem-vindo à nossa comunidade! :hugs:

Caracteres especiais como ] provavelmente é melhor evitar. Mas, dado a resposta do Jay acima, eu teria pensado que funcionaria, assim como incluir % funciona.

Você tinha aspas em sua senha, por acaso? Acho que \" é uma que é impossível de usar porque envolve a senha, a menos que você edite o app.yml para adicionar um escape \\.

Se essa não for a resposta, então provavelmente precisamos atualizar este tópico de documentação para indicar quais caracteres especiais evitar! Ou atualizar o instalador para adicionar um aviso?

2 curtidas

Sem olhar com mais cuidado, eu diria para mudar a senha para não ter caracteres estranhos ou editar app.yml manualmente e colocar a senha entre aspas simples. discourse-setup é uma ferramenta bastante rudimentar que não foi projetada para todas as situações.

1 curtida

É o que eu recomendaria. Esse pequeno soluço provavelmente adicionou 30 minutos à minha instalação.

Melhor ainda: Adicionar validação de senha à instalação para rejeitar senhas que não atendem aos critérios.

2 curtidas

Atualizei o OP para observar explicitamente que a senha não pode incluir caracteres especiais. Está mais ou menos assim?

Vamos trabalhar na incorporação de qualquer outro conselho ao guia e excluir todas essas respostas. Percorrendo, não tenho clareza sobre muitas delas. Por exemplo, a primeira resposta sugere que uma reconstrução foi necessária após a atualização das configurações de SMTP, o que contradiz o guia.

2 curtidas

Sugestão de melhoria na documentação:

Ao configurar o SMTP com um provedor externo (eu estava usando o SendGrid), não estava recebendo e-mails de registro. Executar discourse-doctor identificou o erro: Reason: 550 The from address does not match a verified Sender Identity.

Embora eu tivesse autenticado o domínio de nível superior (example.com) para envio no SendGrid, ainda não havia autenticado o subdomínio do Discourse (discourse.example.com) e, portanto, o SendGrid estava rejeitando as chamadas da API.

Embora isso tenha levado apenas cerca de 15 minutos para eu descobrir, sinto que seria útil incluir um comentário adicional em app.yml e no script de instalação que torne isso mais claro para reduzir o atrito para novos usuários que instalarem o Discourse no futuro. Uma referência direta à página de solução de problemas também seria útil.

Algo como:

# A maioria dos provedores de SMTP exigirá um domínio autenticado ou um endereço de e-mail autenticado
# para enviar e-mails. Certifique-se de ter autenticado seu domínio de envio
# (example.com), subdomínio (discourse.example.com) e o endereço de e-mail `notifications`
# com seu provedor de SMTP antes de registrar novos usuários para garantir a entrega de e-mails.
#
# O comando `discourse-doctor` pode ajudar a testar sua configuração de e-mail.
# Veja: https://meta.discourse.org/t/troubleshoot-email-on-a-new-discourse-install
6 curtidas

A porta 587 para e-mail não funciona para o Mailgun, mas a porta 2525 funciona? Eu mudei a porta para 2525 no app.yml, mas ainda não funciona?

Como eu conserto isso?

Você destruiu e iniciou o contêiner (ou reconstruiu) após alterar a porta?

1 curtida

Eu reconstruí depois de mudar a porta. Devo destruir e iniciar o contêiner?

Apenas um aviso de que, a partir de março/abril de 2025, a DigitalOcean está bloqueando as portas SMTP em todos os droplets por padrão. Eles podem remover a restrição se você abrir um ticket de suporte, mas parece ser tratado caso a caso:

Espero que isso poupe outros de enlouquecerem tentando entender por que seus e-mails não estavam sendo enviados quando tudo parecia estar configurado corretamente! :sweat_smile:

2 curtidas

a porta 25 funcionava de entrada há alguns dias, mas nunca de saída

Acredito que usar a porta 2525 para e-mails de saída ajudará.

1 curtida

Como devo configurar meu droplet DigitalOcean e minha configuração do Discourse? Esta é a primeira vez que faço isso.

Dê uma olhada aqui :slight_smile:

1 curtida

Nenhum e-mail é recebido durante a instalação. No entanto, as ferramentas de teste enviaram um e-mail com minhas informações de SMTP.

O problema mais comum é que o Discourse está usando um endereço de e-mail de notificação para o qual seu servidor smtp não enviará e-mails.