У меня возникла проблема с письмом активации. Судя по логам, оно отправляется, однако я ничего не получаю. Когда я использую Discourse Doctor, письмо приходит без проблем.
Может ли быть какая-то разница между этими двумя способами?
Для полноты картины: на прошлой неделе я получал письмо активации, но из-за проблем с распространением DNS кнопку активации нельзя было нажать. Эта проблема уже решена. Однако других изменений не вносилось, кроме добавления A-записи для указания IP-адреса. Поэтому я не понимаю, что изменилось, из-за чего письмо больше не доставляется?
Не уверен, что у меня есть доступ к журналам почтового провайдера. До сих пор я использовал Microsoft 365 Enterprise для почты (знаю, что это не оптимально, и мы планируем это изменить). Но у меня нет прав администратора, которые, как я полагаю, необходимы для поиска журналов? По крайней мере, из моей точки доступа я ничего не могу найти.
Ничего в папке «Спам».
Попытался снова посмотреть на журнал продакшена, это выглядит правильно для вас?:
Processing by FinishInstallationController#register as HTML
Parameters: {“utf8”=>“✓”, “authenticity_token”=>“***==”, “email”=>“my@email”, “username”=>“PappaK”, “password”=>“[FILTERED]”, “commit”=>“Register”}
Redirected to mydomain. com
Completed 302 Found in 24ms (ActiveRecord: 0.0ms | Allocations: 4888)
Started GET “/finish-installation/confirm-email” for IP at 2020-09-21 05:37:43 +0000
Processing by FinishInstallationController#confirm_email as HTML
Rendering finish_installation/confirm_email.html.erb within layouts/finish_installation
Rendered finish_installation/confirm_email.html.erb within layouts/finish_installation (Duration: 1.0ms | Allocations: 388)
Rendered layouts/_head.html.erb (Duration: 13.4ms | Allocations: 2930)
Completed 200 OK in 18ms (Views: 16.5ms | ActiveRecord: 0.0ms | Allocations: 4738)
Кажется странным, что нет подтверждения отправки письма, как в тесте отправки почты:
Delivered mail my@email. com (682.5ms)
Я удалил некоторые идентифицирующие данные из журналов.
Использование теста Discourse-doctor для корпоративной почты по-прежнему работает отлично. При использовании личной почты система сообщает, что письмо принято SMTP-сервером, но я его не получаю.
Добавил коннектор и использовал MX-адрес, указанный на панели администратора O365.
Я решил пересоздать весь Droplet (от DigitalOcean) после пересоздания приложения, чтобы проверить, поможет ли это. И это сработало! Теперь форум работает, и я получил письмо с активацией на свой аккаунт администратора.
Однако я всё ещё не могу получить письмо при попытке создать учётную запись с моего личного Gmail. В разделе «Пропущенные» (skipped) на странице настроек электронной почты в панели администратора форума появляется следующее сообщение об ошибке:
5…4 TenantAttribution; Relay Access Denied [HE…-eur04.prod.protection.outlook.com]
Похоже, решение может быть здесь:
Но я пока не пробовал. Обновлю информацию, как только найду время внедрить изменения по ссылке.
Краткое примечание: не приведёт ли пересоздание приложения к потере настроек, которые я изменил после активации аккаунта администратора?
По умолчанию Discourse отправляет письма с адреса noreply@discourse.domain.com. Распространённая проблема заключается в том, что ваш почтовый хост требует отправки с адреса domain.com. В статье Устранение неполадок с электронной почтой при новой установке Discourse описано, как это изменить.