11

Django ベースの Web サイトから電子メールを送信しようとしていますが、問題が発生しました - SMTPServerDisconnected 接続が予期せず閉じられました My setting.py:

EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.zoho.com'
EMAIL_PORT = 465
EMAIL_HOST_USER = 'me@mydomain.com'
EMAIL_HOST_PASSWORD = 'XXXXXX'

私はdjango 1.5.1、python 2.7.3を使用しています。誰でもこの問題を解決できますか?

ご協力いただきありがとうございます

4

10 に答える 10

13

私の場合、私はそれを受け取っていました:

SMTPServerDisconnected: Connection unexpectedly closed

これらの設定で:

EMAIL_PORT = 465
EMAIL_BACKEND = 'django_smtp_ssl.SSLEmailBackend'
EMAIL_USE_SSL = True
EMAIL_HOST = 'smtp.zoho.com'
EMAIL_HOST_USER = 'dio@streetbarz.com'
EMAIL_HOST_PASSWORD = 'password'

server.set_debuglevel(1) を設定した後、DEFAULT_FROM_EMAIL が EMAIL_HOST_USER と異なることがわかりました。

DEFAULT_FROM_EMAIL = "dio@streetbarz.com"

それを追加すると、問題が修正されました。

于 2015-04-29T14:47:34.763 に答える
4

メールでエラーレポートを取得したい場合、B.Welshの回答では問題は解決しません。

だから、それを必要とする人のために:

Zoho の TLS のポートは、SMTP サーバー設定ページで定義されている 587です。そのページには、使用している電子メールとは異なる「from」を使用できないことも指摘されています。

settings.py電子メールによるエラー レポートを取得するために必要なコードがあります。

DEBUG = False
TEMPLATE_DEBUG = DEBUG
ADMINS = (('Yourname', 'youremail@yourdomain.com'),)
SERVER_EMAIL = constants.SENDER_EMAIL

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.zoho.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = constants.SENDER_EMAIL
EMAIL_HOST_PASSWORD = constants.EMAIL_PASSWORD
于 2014-10-16T20:15:38.907 に答える
1

django 1.6.8 を使用して送信する方法があります。まず、GitHub で入手できる django-smtp-ssl をインストールする必要があります。コードを実行します。

pip install django-smtp-ssl

settings.py に以下を追加します。

EMAIL_BACKEND = 'django_smtp_ssl.SSLEmailBackend'   
EMAIL_HOST = 'mail.example.com'   
EMAIL_PORT = 465

リンクを参照してくださいhttps://github.com/bancek/django-smtp-ssl

于 2014-12-30T16:31:52.783 に答える
1

このリンクの説明によると、正しい smtp URL も確認する必要があります。私の場合、smtp.zoho.com を使用していましたが、正しい選択は smtp.zoho.in でした。それが役立つことを願っています。これは、zoho にログインしてドメインの URL を確認するとわかります。

于 2021-03-15T10:27:48.910 に答える
0

True の代わりに 1 を試してください:

EMAIL_USE_TLS = 1
EMAIL_PORT = 465
EMAIL_HOST = 'smtp.zoho.com'
EMAIL_HOST_USER = 'me@mydomain.com'
EMAIL_HOST_PASSWORD = 'XXXXXX'

または、別のポートを試してください。

EMAIL_USE_TLS = 1
EMAIL_PORT = 587
EMAIL_HOST = 'smtp.zoho.com'
EMAIL_HOST_USER = 'me@mydomain.com'
EMAIL_HOST_PASSWORD = 'XXXXXX'
于 2013-08-20T14:52:54.153 に答える
0

Zoho MailのSMTP構成設定 - TLSはポート587を使用し、ssl 465を使用します。したがって、EMAIL_PORT = 587EMAIL_USE_TLS = Trueを使用する場合に使用します

于 2016-10-10T10:27:48.630 に答える
0

stmp メール バックエンド クラスが古い可能性があります。後藤

python/サイトパッケージ/ジャンゴ/コア/メール/stmp.py

ファイルを開き、オプションとして USE_SSL があることを確認してください。そうでない場合は、単純にファイル全体をあるファイルに置き換えてください。どうぞ。ZOHOでお世話になりました。

stmp.py ファイル

SO への私の最初の貢献です...

于 2013-11-10T16:49:55.347 に答える