becl
06.Март.2025 04:17:03
1
Здравствуйте,
Я установил Discourse на отдельный сервер и использую почтового провайдера Titan Email.
Я провел весь день, просматривая сообщество, и перепробовал все возможные варианты настроек, но письма так и не отправляются.
Вот мои настройки.
## TODO: SMTP-сервер, используемый для проверки новых учетных записей и отправки уведомлений
# Требуются SMTP-адрес, имя пользователя и пароль
# ВНИМАНИЕ: символ '#' в пароле SMTP может вызвать проблемы!
DISCOURSE_SMTP_ADDRESS: smtp.titan.email
DISCOURSE_SMTP_PORT: 465
DISCOURSE_SMTP_USER_NAME: hello@mydomain.com
DISCOURSE_SMTP_PASSWORD: mypass
#DISCOURSE_SMTP_ENABLE_START_TLS: true
DISCOURSE_SMTP_AUTHENTICATION: plain
#DISCOURSE_SMTP_DOMAIN: community.mydomian.com
DISCOURSE_NOTIFICATION_EMAIL: hello@mydomain.com
Может ли кто-нибудь помочь мне понять, где я ошибаюсь?
Работает ли это, если изменить порт на 587?
becl
06.Март.2025 04:58:18
3
К сожалению, нет. У меня был порт 587 с включённой опцией «Enable start TLS» и с закомментированной опцией — ни один из вариантов не сработал.
Я также должен был опубликовать это — это ошибка, возникающая при запуске Discord Doctor:
======================================== ОШИБКА ========================================
НЕОЖИДАННАЯ ОШИБКА
Net::ReadTimeout
====================================== РЕШЕНИЕ =======================================
Это не распространённая ошибка. Рекомендуемого решения нет!
Пожалуйста, сообщите точное сообщение об ошибке выше на https://meta.discourse.org/
(А также решение, если вы его найдёте!)
Замена: SMTP_PASSWORD
Замена: LETSENCRYPT_ACCOUNT_EMAIL
Замена: DEVELOPER_EMAILS
Замена: DISCOURSE_DB_PASSWORD
Замена: Отправка писем на
becl
06.Март.2025 05:11:03
4
Я также запустил это из командной строки, и оно работает, поэтому я думаю, что проблема в настройках в app.yml, которые указаны неверно.
swaks --to bec@.com --from hello@ .com --server smtp.titan.email --port 587 --auth-user hello@****.com --auth-password “mypass” --tls
becl:
из командной строки
На хосте?
Оно работает на хосте, но не работает в контейнере?
В любом случае, попробуйте сделать это вручную и посмотрите, как далеко вы продвинетесь.
becl
06.Март.2025 05:24:03
6
Наконец-то сработало: я изменил порт на 587, включил ENABLE_START_TLS и закомментировал строку #DISCOURSE_SMTP_AUTHENTICATION: plain.
Я был уверен, что пробовал это сегодня. Возможно, я перепутал местами цифры номера порта или забыл пересобрать Discourse между попытками. Вывод: не занимайтесь такими делами, когда вы устали и находитесь в стрессе!