-1
在阅读Django网站上的文档后,我对如何使用我的Djagno应用程序配置SMTP后端有点困惑。我有一台本地交换服务器,它运行的是使用Outlook作为客户端的业务域business.com
。如何配置设置以便我使用公司电子邮件(本地交换机)在设置中发送电子邮件?使用Django SMTP
感谢您的帮助!
编辑:
这里是连接错误:
email.send()
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "C:\Users\Evan\AppData\Local\Programs\Python\Python35-32\lib\site-packages\django\core\mail\message.py", line 342, in send
return self.get_connection(fail_silently).send_messages([self])
File "C:\Users\Evan\AppData\Local\Programs\Python\Python35-32\lib\site-packages\django\core\mail\backends\smtp.py", line 100, in send_messages
new_conn_created = self.open()
File "C:\Users\Evan\AppData\Local\Programs\Python\Python35-32\lib\site-packages\django\core\mail\backends\smtp.py", line 58, in open
self.connection = connection_class(self.host, self.port, **connection_params)
File "C:\Users\Evan\AppData\Local\Programs\Python\Python35-32\lib\smtplib.py", line 251, in __init__
(code, msg) = self.connect(host, port)
File "C:\Users\Evan\AppData\Local\Programs\Python\Python35-32\lib\smtplib.py", line 335, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "C:\Users\Evan\AppData\Local\Programs\Python\Python35-32\lib\smtplib.py", line 306, in _get_socket
self.source_address)
File "C:\Users\Evan\AppData\Local\Programs\Python\Python35-32\lib\socket.py", line 711, in create_connection
raise err
File "C:\Users\Evan\AppData\Local\Programs\Python\Python35-32\lib\socket.py", line 702, in create_connection
sock.connect(sa)
ConnectionRefusedError: [WinError 10061] No connection could be made because the target machine actively refused it
这里是我的代码:
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_USE_TLS = True
EMAIL_HOST = 'business.com'
EMAIL_PORT = '25'
EMAIL_HOST_USER = '[email protected]'
EMAIL_HOST_PASSWORD = 'password'
谢谢你的帮助。两个问题,为什么我们使用TLS over SSL,并且我将不得不为Django制作邮箱才能使用,更正? – GreenSaber
1. TLS用于端口587,SSL用于465.两者都用于安全连接到SMTP服务器。对于ref:https://docs.djangoproject.com/en/1.10/ref/settings/ 2.是的,你必须创建一个特定于你的项目的邮箱/分发列表,并在提出SMTP请求时给予同样的内容。 –
我试图在shell中发送电子邮件,但是我得到WinError 100061,目标机器主动拒绝连接。我不知道为什么会发生这种情况,因为我在我的电子邮件和应用程序邮箱之间手动发送了电子邮件。 – GreenSaber