Django 电子邮件配置问题:ConnectionRefusedError [WinError 10061]

Django Email Configuration Issue: ConnectionRefusedError [WinError 10061]

提问人:A_K 提问时间:10/14/2023 最后编辑:A_K 更新时间:10/17/2023 访问量:33

问:

问题:

尝试发送电子邮件时,我在 Django 项目中遇到了 ConnectionRefusedError。错误消息如下:

ConnectionRefusedError: [WinError 10061] No connection could be made because the target machine actively refused it

详:

上下文:

我正在将 Django 用于 Web 应用程序。 我已在 settings.py 文件中配置电子邮件设置,以使用 Linode 服务器上托管的自定义电子邮件域。

电子邮件配置 (settings.py):

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.ip.com'  # e.g., 'smtp.yourdomain.com'
EMAIL_PORT = 587  
EMAIL_USE_TLS = True  
EMAIL_HOST_USER = 'your_ema[email protected]'  
EMAIL_HOST_PASSWORD = 'your_email_password'  

我检查了电子邮件服务器状态;它已启动并运行。

问题:

是什么原因导致了此 ConnectionRefusedError? 我是否应该采取任何其他步骤来解决这个问题?

在对生产服务器进行更改之前,我目前正在本地主机上测试电子邮件

有关解决此问题的任何见解或指导将不胜感激。谢谢!

以下是 Nginx 中允许的端口:

To                         Action      From
--                         ------      ----
Nginx Full                 ALLOW       Anywhere
587                        ALLOW       Anywhere
Nginx Full (v6)            ALLOW       Anywhere (v6)
587 (v6)                   ALLOW       Anywhere (v6)

我已经确保 Linode 允许 587 端口 但是当我尝试输入以下代码时:

telnet smtp.domainname.com 587

我收到以下错误

Connecting To smtp.domainname.com...Could not open connection to the host, on port 587: Connect failed

当我更改以下内容时,有时也会遇到以下错误:

EMAIL_HOST = 'smtp.domainname.com' 

出现以下错误:

socket.gaierror: [Errno 11001] getaddrinfo failed
Django 电子邮件

评论

0赞 Arun T 10/14/2023
服务器上的端口是否打开?
0赞 A_K 10/14/2023
@ArunT应该是我在 Linode 服务器中添加了开放端口。
0赞 Arun T 10/14/2023
您是否能够在端口 587 中对该服务器执行 ping 操作?
0赞 A_K 10/14/2023
@ArunT 是,ping 命令的结果成功

答: 暂无答案