2013-08-14 11 views
3

Я хочу отправить электронную почту в приложении Django с использованием SMTP-сервера Outlook. Проблема в том, что я получаю Неверный номер версии SSL ошибка каждый раз, когда я пытаюсь отправить сообщение.Отправка электронной почты с помощью Outlook SMTP

отслеживающий Ошибка:

Traceback (most recent call last): 
File "F:\Development\Python\lib\smtplib.py", line 366, in getreply 
    line = self.file.readline() 
File "F:\Development\Python\lib\socket.py", line 297, in readinto 
    return self._sock.recv_into(b) 
File "F:\Development\Python\lib\ssl.py", line 453, in recv_into 
    return self.read(nbytes, buffer) 
File "F:\Development\Python\lib\ssl.py", line 327, in read 
    v = self._sslobj.read(len, buffer) 
ssl.SSLError: [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1450) 

During handling of the above exception, another exception occurred: 

Traceback (most recent call last): 
File "F:\Development\Python\lib\site-packages\django\core\handlers\base.py", line 115, in get_response 
    response = callback(request, *callback_args, **callback_kwargs) 
File "E:\SkyDrive\Repositories\web\skyproject\views.py", line 13, in index 
    email.send() 
File "F:\Development\Python\lib\site-packages\django\core\mail\message.py", line 255, in send 
    return self.get_connection(fail_silently).send_messages([self]) 
File "F:\Development\Python\lib\site-packages\django\core\mail\backends\smtp.py", line 88, in send_messages 
    new_conn_created = self.open() 
File "F:\Development\Python\lib\site-packages\django\core\mail\backends\smtp.py", line 55, in open 
    self.connection.login(self.username, self.password) 
File "F:\Development\Python\lib\smtplib.py", line 621, in login 
    AUTH_PLAIN + " " + encode_plain(user, password)) 
File "F:\Development\Python\lib\smtplib.py", line 398, in docmd 
    return self.getreply() 
File "F:\Development\Python\lib\smtplib.py", line 370, in getreply 
+ str(e)) 

smtplib.SMTPServerDisconnected: Connection unexpectedly closed: [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1450) 

Это моя конфигурация SMTP в 'settings.py':

EMAIL_USE_TLS = True 
EMAIL_HOST = 'smtp.live.com' 
EMAIL_HOST_USER = '[email protected]' 
EMAIL_HOST_PASSWORD = 'my_password' 
EMAIL_PORT = 587 

И это, как сообщения отправляются:

from django.core.mail import EmailMessage 
email = EmailMessage('Test', 'Test', to=['[email protected]']) 
email.send() 

У меня есть не знаю, почему я получаю эту ошибку. Насколько мне известно, в настройках Django нет параметра SSL_VERSION.

Если это важно, версия моего переводчика является 3.3.2 и версия Django является 1.5.2.

+0

Вы когда-нибудь исправляли это? – Lee

+0

Нет, я еще не исправил это. – ahawkthomas

ответ

0

Я получил это работает со следующими параметрами:

EMAIL_USE_TLS = True 
EMAIL_HOST = 'smtp-mail.outlook.com' 
EMAIL_HOST_USER = '[email protected]' 
EMAIL_HOST_PASSWORD = 'mypassword' 
EMAIL_PORT = 25 
0

У меня был очень похожий вопрос. Я получаю следующее сообщение об ошибке:

SMTPServerDisconnected: Connection unexpectedly closed 

Решение было:

  1. Войти на адрес электронной почты через веб-интерфейс, доступный на www.outlook.com
  2. Проверьте свой счет путем предоставления MS с моим номером телефона и набрав полученное SMS.

После этого я могу отправить электронную почту от Django.

Смежные вопросы