Quel serveur mail pour site en localhost
Bonjour,
Je suis plus ou moins novice en python. Je travaille sur un projet avec django et j'ai besoin d'envoyer un code par mail après une inscription.
Mais le server mail smtp me bloque complètement car je n'ai pas encore vraiment de connaissance sur le sujet or que c'est plus ou moins urgent à cause de la livraison de ce projet. C'est pourquoi je demande un renfort.
1) Avec ce code, j'ai un [WinError 10061] Aucune connexion n’a pu être établie car l’ordinateur cible l’a expressément refusée
Code:
1 2 3 4 5 6 7 8 9 10 11
| msg = MIMEText('This is the body of the message.')
msg['To'] = email.utils.formataddr(('Recipient', 'ralim@gmail.com'))
msg['From'] = email.utils.formataddr(('Author', 'ralim@gmail.com'))
msg['Subject'] = 'Simple test message'
server = smtplib.SMTP('127.0.0.1', 1025)
server.set_debuglevel(True) # show communication with the server
try:
server.sendmail('ralim@gmail.com', ['ralim@gmail.com'], msg.as_string())
finally:
server.quit() |
2) Si je n'envoi pas de mail, je voudrais vérifier simplement si le mail existe
Mai de nouveau avec ce code, j'ai un Timeout
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| addressToVerify = mail1
match = re.match('^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$', addressToVerify)
if match == None:
raise ValueError('Bad Syntax')
return HttpResponseRedirect('inscription')
records = dns.resolver.query('egd.ca', 'MX')
mxRecord = records[0].exchange
mxRecord = str(mxRecord)
# Get local server hostname
host = socket.gethostname()
# SMTP lib setup (use debug level for full output)
server = smtplib.SMTP()
server.set_debuglevel(0)
# SMTP Conversation
server.connect(mxRecord)
server.helo(host)
server.mail('mail@example.com')
code, message = server.rcpt(str(addressToVerify))
server.quit()
# Assume 250 as Success
if not code == 250:
return HttpResponseRedirect('inscription') |
Et je sais que c'est le serveur mail le problème mais je tâtonne.
Merci d'avance de votre aide.