Не удается добавить дополнительный адрес электронной почты или изменить адрес на учетной записи

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

Если я попробую добавить новый адрес электронной почты, я увижу этот экран:

И я могу увидеть ожидающее подтверждение письмо в своём профиле:

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

Если я сделаю то же самое на этом форуме (мета-форуме), всё работает как положено, и я получаю письмо.

Похоже, что в моей установке что-то настроено неправильно. Есть какие-то идеи, почему это может происходить?

Включена ли на вашем сайте опция «Требовать одобрение пользователей»? Это напоминает мне Should a deactivated user receive an email? - #7 by Moin

Однако я попробовал, и при попытке изменить адрес электронной почты проблем не возникло.

2 лайка

Спасибо за ответ.

Нет, регистрация открыта для всех, и эта часть корректно работает также с электронной почтой.

Есть ли что-то в консоли (ошибки сети HTTP), когда они нажимают кнопку? Выполняется ли запрос к Discourse?

@sam да, я вижу POST запрос к /u/<username>/preferences/email с form-data и новым email в теле формы. Ответ — 200, без данных в теле.

Есть ли какой-то более глубокий уровень отладки, который я могу включить, чтобы узнать, где запрос завис?

РЕДАКТИРОВАНИЕ: Похоже, это вызвано тем, что DigitalOcean теперь блокирует порт 587.

2 лайка