Пытались ли вы выполнить шаги по устранению проблемы в этой теме и других связанных с ней?
Добавьте строку в ваш app.yml:
DISCOURSE_SMTP_DOMAIN: [fqdn вашего сервера]
Затем в /var/discourse выполните: ./launcher rebuild app
Утилита discourse-doctor может по-прежнему сообщать об ошибках, но тестовые письма из административной консоли должны отправляться, и обычный поток писем должен возобновиться.
Если это не сработает, пожалуйста, сообщите об этом, так как в таком случае существует какой-то другой аспект, который ещё не был выявлен.
Кажется очевидным, что localhost всегда неверен, но большинство SMTP-серверов игнорируют это значение, поэтому это не имело значения.
Три места, где smtp_domain встречается в https://github.com/discourse/discourse, все относятся к периоду 2–7 лет назад. Я задавался вопросом, не начала ли какая-то библиотека по какой-то причине отправлять localhost?
Я считаю, что лучшее решение, несмотря на опасения @Falco, — это действительно исправить это в каком-то месте, например
Независимо от того, будет ли консенсус заключаться в том, чтобы продолжать отправлять localhost, несмотря на то, что это противоречит RFC, исправление задачи rake, описанное выше, обязательно. Кстати, этот код написал я. Но, подождите. Я вижу, что action_mailer.smtp_settings['domain'] может быть пустым. Так что, наверное,
по крайней мере на данный момент. Я думаю, что это должно использовать domain, если он существует, и использовать текущее (но ошибочное?) поведение с использованием localhost, если discourse_smtp_host не определен.
Я не хочу добавлять это в discourse-setup, так как для почти всех всё работает как есть, и это ещё один довольно запутанный вопрос. (А я вот-вот добавлю вопрос для notification_email, так что, если мы не будем осторожны, это начнёт напоминать то, что я помню о создании ядра Linux пару десятилетий назад.)
Только что получил уведомление об этой проблеме и могу подтвердить, что исправление работает. Наш экземпляр с обычно низкой нагрузкой также столкнулся с резким ростом Sidekiq, судя по всему, из-за многократных повторных попыток выполнения задач хеширования.
Я думал, что Google ввел новые ограничения на использование, так как сообщение об ошибке там соответствует тому, что они выдают при отклонении DoS-атак.