Письма для подтверждения нового администратора не отправляются

Привет, друзья,

Я пытаюсь предоставить права администратора пользователю на нашем форуме. При нажатии кнопки «Предоставить права администратора» появляется сообщение: «Мы отправили вам электронное письмо для подтверждения нового администратора. Пожалуйста, откройте его и следуйте инструкциям». Однако письмо не отправляется: если посмотреть на страницу «Журнал электронной почты», записи об этом нет. Есть какие-нибудь идеи, что может быть не так?

Спасибо,
Даниэль

Привет, Даниэль,

Для расследования проблем с доставкой электронной почты на вашем сайте у нас есть руководство по Устранению неполадок исходящей почты, в котором содержатся рекомендации по устранению возможных проблем с отправкой писем на вашем сайте, а также объясняется, как осуществляется отправка почты с сайта Discourse.

В логах почты вашего сайта должно отображаться сообщение admin_confirmation_message, если Discourse пытался отправить письмо для подтверждения администратора. Такое письмо должно отправляться на адрес, связанный с учётной записью администратора, под которой вы были авторизованы в момент нажатия кнопки «Назначить администратором».

Также рекомендуется проверить логи вашего провайдера отправки почты, который вы настроили для использования вашим сайтом Discourse, чтобы убедиться в отсутствии проблем с его стороны. Если письма отсутствуют в логах провайдера, это может указывать на неправильную настройку параметров почты или возможную блокировку на уровне сервиса провайдера.

Если после выполнения этих шагов вам всё ещё не удалось выявить проблему с доставкой почты, вы также можете рассмотреть возможность создания учётной записи администратора через консоль, так как это позволит обойти процесс проверки электронной почты.

Если вы не хотели использовать обходной путь с консолью Rails, другой вариант — включить двухфакторную аутентификацию для вашей учётной записи администратора, а затем использовать код аутентификации для подтверждения предоставления прав администратора вместо подтверждения по электронной почте (к тому же ваша учётная запись администратора станет более защищённой :slight_smile:)

Хотя странно, что вы не видите соответствующего лога отправки письма. :thinking: Вам удалось в итоге найти причину проблемы?

Кажется, недавно было ещё одно похожее сообщение — Grant admin confirmation mail not sent

Нет — я обновляю настройку в базе данных, что является подходом <…>. Я попробую вариант с двухфакторной аутентификацией.

Я обдумал это, и ничего сразу не приходит на ум. :thinking:

Для отладки, думаю, мне пришлось бы начать с общего подхода.

  • Перепроверьте, чтобы убедиться, что это не в журналах электронной почты (отправленные и пропущенные)
  • Работает ли это в безопасном режиме?
  • При нажатии кнопки «предоставить права администратора» появляются ли какие-либо ошибки в консоли браузера?
  • Есть ли что-то в yoursite/logs?
  • Работает ли это для другого администратора?

С двумя отчетами можно сравнить вашу конфигурацию/настройку и конфигурацию/настройку @dfremont, чтобы увидеть, есть ли у вас что-то общее. Есть ли какие-либо неофициальные плагины (или плагины в целом), что-то особенно характерное для настроек вашего сайта и т. д.?

Спасибо всем. После обновления Discourse на панели управления появилось полезное сообщение «Не удалось выполнить X задач отправки почты». Логи в Sidekiq были неконкретными (просто указывали «исполнение истекло»), но привели меня к этому посту от пользователя, у которого проблема была вызвана блокировкой порта 587 сервисом DigitalOcean. Я переключился на порт 2525, как они и советовали, и теперь всё работает.