我已经使用 django send_mail 很长时间了。然而,在一个使用 django 1.4 的新项目中,我改变了我的开发机器,我遇到了一个非常奇怪的问题。
当我使用所有设置(EMAIL_HOST='localhost' EMAIL_PORT=25 等)在标准后端调用 send_mail 时,我收到错误消息:
File "c:\python27\lib\site-packages\django\core\mail\backends\smtp.py", line 4
8, in open local_hostname=DNS_NAME.get_fqdn())
File "c:\python27\lib\smtplib.py", line 249, in __init__
(code, msg) = self.connect(host, port)
File "c:\python27\lib\smtplib.py", line 309, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "c:\python27\lib\smtplib.py", line 284, in _get_socket
return socket.create_connection((port, host), timeout)
File "c:\python27\lib\socket.py", line 571, in create_connection
raise err
socket.error: [Errno 10013] An attempt was made to access a socket in a way forb
idden by its access permissions
我不知道我做错了什么,我已经调试过了,似乎连接函数接收到了正确的端口和主机,但是它被禁止了。我怀疑它可能是我的防病毒软件,但禁用它并没有帮助。
如果有人认为这是问题所在,我正在使用管理员权限(禁用 UAC)。