2017-08-21 15 views
1

私は開発中のWebサイトからDjangoで電子メールを受信できるようにしばらくお待ちしています。今、私はまだそれを展開していない、と私はDjango開発サーバーを使用している、と私はこの影響を受けるかどうかわからない。ここで Django send_mail SMTPSenderRefused 530 with gmail

は私のsettings.pyの設定です:

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' 
EMAIL_USE_TLS = True 
EMAIL_HOST = 'smtp.gmail.com' 
EMAIL_PORT = 587 
EMAIL_HOST_USER = '[email protected]' 
EMAIL_HOST_PASSWROD = 'my_password' 
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER 
DEFAULT_TO_EMAIL = EMAIL_HOST_USER 

その後、私はpython manage.py shellを実行するプロジェクトのルートフォルダを通り、次のように入力します。

>>> import django 
>>> from django.conf import settings 
>>> from django.core.mail import send_mail 
>>> send_mail('test', 'test', settings.EMAIL_HOST_USER, [settings.EMAIL_HOST_USER], fail_silently=False) 

をそして私は戻って何を受け取ります次のエラー:

Traceback (most recent call last): 
    File "<console>", line 1, in <module> 
    File "/home/paulo/anaconda3/envs/MyDjangoEnv/lib/python3.6/site-packages/django/core/mail/__init__.py", line 62, in send_mail 
    return mail.send() 
    File "/home/paulo/anaconda3/envs/MyDjangoEnv/lib/python3.6/site-packages/django/core/mail/message.py", line 348, in send 
    return self.get_connection(fail_silently).send_messages([self]) 
    File "/home/paulo/anaconda3/envs/MyDjangoEnv/lib/python3.6/site-packages/django/core/mail/backends/smtp.py", line 111, in send_messages 
    sent = self._send(message) 
    File "/home/paulo/anaconda3/envs/MyDjangoEnv/lib/python3.6/site-packages/django/core/mail/backends/smtp.py", line 127, in _send 
    self.connection.sendmail(from_email, recipients, message.as_bytes(linesep='\r\n')) 
    File "/home/paulo/anaconda3/envs/MyDjangoEnv/lib/python3.6/smtplib.py", line 866, in sendmail 
    raise SMTPSenderRefused(code, resp, from_addr) 
smtplib.SMTPSenderRefused: (530, b'5.5.1 Authentication Required. Learn more at\n5.5.1 https://support.google.com/mail/?p=WantAuthErrorv11sm8729581qkl.88 - gsmtp', '[email protected]') 

安全なアプリケーション。

Googleが提供するEMAIL_HOST_PASSWORD = 'myapplicationpassword'を入力するために、2段階認証を使用するときに、EMAIL_HOST_PASSWORD = "my_password"の代わりに入力しようとしました。それはうまくいかなかった。

次に、2段階認証プロセスを無効にして、アプリケーションパスワードから実際のパスワードに変更しました。エラーが残ります。

何か間違っていますか? Googleはどういうわけかこれらのタイプのアプリケーションをブロックしましたか?私自身のメールサーバーを走らせればもっとうまくいくでしょうか?

+0

これらの設定のメールを他のメールクライアント経由で送信できますか? https://mail.google.com/mail/u/0/#settings/もご覧ください。 – allcaps

答えて

2

Google SMTPを使用している場合、GoogleはSMTPの使用を直接ブロックする新しいセキュリティ機能を導入しています。 Google SMTPを使用するには、Googleアカウントにログインして、安全性の低いアプリへのアクセスを有効にする必要があります。このオプションは、[マイアカウント]の[セキュリティチェック]の下にあります。下のスクリーンショットを参照してください。 enter image description here