/ / Django send-mail [Errno -2] Nom ou service inconnus - django, email

Django send-mail [Errno -2] Nom ou service inconnus - django, email

J'ai des problèmes pour envoyer du courrier Django

Je configure mon compte Gmail en suivant ce lien:

Et j’ai essayé chaque solution en ligne mais j’ai quand même [Errno -2]

J'ai trouvé quelqu'un qui disait que c'était à cause du problème de DNS, quelqu'un peut-il me dire ce qui ne va pas avec mon code et existe-t-il une solution?

views.py

import django
from django import settings
from django.core.mail import send_mail

def contact(request):
send_mail("subject","message",settings.EMAIL_HOST_USER,["zwt467875460@gmail.com"],fail_silently = False)
return HttpResponseRedirect("/contact/thanks")
def thanks(request):
return HttpResponse("thanks!")

settings.py

#email config
EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend"
EMAIL_HOST = "smtp.gamil.com"
EMAIL_PORT = 587
EMAIL_HOST_USER="zwt467875460@gmail.com"
EMAIL_HOST_PASSWORD="*********"        #my gmail password
EMAIL_USER_TLS = True
DEFAULT_FORM_EMAIL = EMAIL_HOST_USER
ACCOUNT_EMAIL_VERIFICATION = "none"

erreur de traçage

Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/Django-1.10.6-py2.7.egg/django/core/handlers/exception.py", line 42, in inner
response = get_response(request)
File "/usr/local/lib/python2.7/dist-packages/Django-1.10.6-py2.7.egg/django/core/handlers/base.py", line 187, in _get_response
response = self.process_exception_by_middleware(e, request)
File "/usr/local/lib/python2.7/dist-packages/Django-1.10.6-py2.7.egg/django/core/handlers/base.py", line 185, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/wenting/WTDjango/mysite/books/views.py", line 30, in contact
send_mail("subject","message",settings.EMAIL_HOST_USER,["zwt467875460@gmail.com"],fail_silently = False)
File "/usr/local/lib/python2.7/dist-packages/Django-1.10.6-py2.7.egg/django/core/mail/__init__.py", line 62, in send_mail
return mail.send()
File "/usr/local/lib/python2.7/dist-packages/Django-1.10.6-py2.7.egg/django/core/mail/message.py", line 342, in send
return self.get_connection(fail_silently).send_messages([self])
File "/usr/local/lib/python2.7/dist-packages/Django-1.10.6-py2.7.egg/django/core/mail/backends/smtp.py", line 100, in send_messages
new_conn_created = self.open()
File "/usr/local/lib/python2.7/dist-packages/Django-1.10.6-py2.7.egg/django/core/mail/backends/smtp.py", line 58, in open
self.connection = connection_class(self.host, self.port, **connection_params)
File "/usr/lib/python2.7/smtplib.py", line 256, in __init__
(code, msg) = self.connect(host, port)
File "/usr/lib/python2.7/smtplib.py", line 316, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "/usr/lib/python2.7/smtplib.py", line 291, in _get_socket
return socket.create_connection((host, port), timeout)
File "/usr/lib/python2.7/socket.py", line 557, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
gaierror: [Errno -2] Name or service not known
[15/Apr/2017 18:45:56] "GET /contact/ HTTP/1.1" 500 102295

et dans la page d'erreur Django:

Exception Location:     /usr/lib/python2.7/socket.py in create_connection, line 557

Je suppose que mon problème est que Gmail pense que je n'ai pas de DNS fixe ou correct donc je ne peux pas créer une prise

Et puis j'ai essayé sendmail: après avoir installé sendmail, sendmail-cf et le configurer,

j'ai essayé :

 echo "Subject: sendmail test" | sendmail -v zwt467875460@gmail.com

et la sortie est (j'omet les détails d'envoi):

354 Enter mail, end with "." on a line by itself
>>> .
050 <zwt467875460@gmail.com>... Connecting to smtp.gmail.com via relay...
050 <zwt467875460@gmail.com>... Deferred: Connection refused by smtp.gmail.com
250 2.0.0 v3GKMtLU003555 Message accepted for deliveryzwt467875460@gmail.com... Sent (v3GKMtLU003555 Message accepted for delivery)
Closing connection to [127.0.0.1]
>>> QUIT
221 2.0.0 localhost.localdomain closing connection

La connexion est refusée par smtp.gmail.com

Réponses:

0 pour la réponse № 1

Vérifiez si les paramètres IMAP / POP sont activés à partir des paramètres de votre compte Gmail. Vérifiez également que l'accès aux "applications moins sécurisées" est activé. Sinon, suivez le lien:https://support.google.com/accounts/answer/6010255