Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why is my send_mail() command not working in Django?

I put the following in my settings.py file. The email address there is a test one. I found the email settings from Webfaction's site:

EMAIL_HOST = 'smtp.webfaction.com'
EMAIL_HOST_USER = 'hekevintran_test'
EMAIL_HOST_PASSWORD = 'testpass'
EMAIL_PORT = 465
EMAIL_USE_TLS = True

This is what my file looks like:

from django.core.mail import send_mail

send_mail(subject='subject',
          message='message',
          from_email='[email protected]',
          recipient_list=['[email protected]'],
          fail_silently=False)

When I run the above it stalls a long time and then gives me this error:

SMTPServerDisconnected: Connection unexpectedly closed

What am I doing wrong?

like image 760
hekevintran Avatar asked Apr 11 '09 01:04

hekevintran


2 Answers

I have a Django project on Webfaction right now that is properly sending emails. The only difference between your settings and mine is that I did not specify EMAIL_PORT or EMAIL_USE_TLS. Try it out without those settings and let Django use the default it has and see if it works.

For reference's sake, the default settings are:

EMAIL_PORT = 25
EMAIL_USE_TLS = False
like image 169
Paolo Bergantino Avatar answered Oct 12 '22 01:10

Paolo Bergantino


I had this problem with my hosted account at asmallorange.com. There, it was a firewall problem. I would suggest contacting support and ensuring port 465 can get through the firewall.

like image 33
probos Avatar answered Oct 12 '22 02:10

probos