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.
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?
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.
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.
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
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!