Djangoでエラー通知をメールで受信したいことがありましたので備忘録。
メール送信先の設定
settings.pyに設定を追記すればいいみたいでしたが、少しはまりました。
ADMINSの設定
NG:[(‘John’, ‘john@example.com’)]
OK:[(‘John’, ‘john@example.com’),]
末尾のカンマが必要だった。
メール送信が465ポートでできない。
EMAIL_PORT=465
EMAIL_USE_TLS=True
とするも送信できない。
EMAIL_PORT=587
EMAIL_USE_TLS=False
とすると送信できる。
送信エラーを見ると、メールサーバーがSTARTTLSに対応していない。
記事を見ると、EMAIL_PORTとEMAIL_USE_TLSの設定項目のみの記述が多いのですが、公式ドキュメントを確認すると、EMAIL_USE_SSLの設定もある。
なので、
EMAIL_PORT=465
EMAIL_USE_TLS=False
EMAIL_USE_SSL=True
とすると送信できた。