@gh0sty
Веб-разработчик. Пишу под Python Django.

Как настроить smtp почту в Django?

Я хочу настроить отправку email-ов через внешние smtp сервисы. Приложение стоит на uwsgi и nginx, подключены ssl сертификаты с перманентной переадресацией на https. Перезапускаю каждый раз uwsgi, nginx (и даже через -s reload). Пробовал несколько smtp сервисов - результат по нулям. Менял порты. Пробовал send_mail через shell - он просто ничего не выводит. Чередовал разные параметры - но ни один не отправил письма, хоть на локалке через gmail - все было ок. Последние 2 что пробовал - SendGrid и SendinBlue. В settings указал backend. Такое чувство, что я упускаю какую-то важную настройку.
Вот settings.py:
EMAIL_HOST = 'smtp-relay.sendinblue.com'
EMAIL_HOST_USER = 'login' # типо адекватный логин
EMAIL_HOST_PASSWORD = 'password' # типо адекватный пароль
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'


Этот конфиг на SendGrid тоже не пашет:
EMAIL_HOST = 'smtp.sendgrid.net'
EMAIL_HOST_USER = DEFAULT_FROM_EMAIL = 'apikey'
EMAIL_HOST_PASSWORD = 'big api key'
EMAIL_PORT = 465
EMAIL_USE_SSL = True
EMAIL_SSL_CERTFILE = os.path.join(BASE_DIR, "certs", "certificate.crt")
EMAIL_SSL_KEYFILE = os.path.join(BASE_DIR, "certs", "private.key")
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
  • Вопрос задан
  • 1182 просмотра
Решения вопроса 1
@gh0sty Автор вопроса
Веб-разработчик. Пишу под Python Django.
Причина - закрытые исходящие порты. Но я даж постфикс поставил, думая, что моя ошибка)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Legalas61
@Legalas61
Студент
Попробуй убрать EMAIL_BACKEND
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы