【问题标题】:(421, b'Cannot connect to SMTP server, connect error 10061')(421, b'无法连接到 SMTP 服务器,连接错误 10061')
【发布时间】:2021-11-29 12:47:13
【问题描述】:

我正在尝试使用 send_mail 从我的网站向自己发送一封实际的电子邮件。我使用了 localhost 和以下 cmd 命令,

python -m smtpd -n -c DebuggingServer localhost:1025 

为了测试它。它拦截没有问题,但我在收件箱中看不到任何内容。

这里是 settings.py 文件:

EMAIL_HOST = '178.67.220.242' # My current ip address 
EMAIL_PORT = '587' # Port of the email host  
EMAIL_HOST_USER = 'b....a1@gmail.com' # Here is my actual email  
EMAIL_HOST_PASSWORD = '.....' # Here is my actual password from my email login   
EMAIL_USE_TLS = True  
EMAIL_USE_SSL = False

这里是views.py文件:

from django.shortcuts import render 
from django.core.mail import send_mail 
from .forms import ContactForm  

def contact(request):     
    form = ContactForm     
    if request.method == 'POST':          
        message_name = request.POST.get('name')          
        message_email = request.POST.get('email')          
        message = request.POST.get('message') 
        send_mail(message_name, message, message_email, ['b....a1@gmail.com'])     
    return render(request, 'contact.html', {'form': form})

这是错误:

Traceback (most recent call last):
  File "C:\Users\1\AppData\Local\Programs\Python\Python38\lib\site-packages\django\core\handlers\exception.py", line 47, in inner
    response = get_response(request)
  File "C:\Users\1\AppData\Local\Programs\Python\Python38\lib\site-packages\django\core\handlers\base.py", line 181, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "C:\Users\1\PycharmProjects\StasProject\sales_project\contact\views.py", line 15, in contact
    send_mail(message_name, message, message_email, ['badabuska1@gmail.com'])
  File "C:\Users\1\AppData\Local\Programs\Python\Python38\lib\site-packages\django\core\mail\__init__.py", line 61, in send_mail
    return mail.send()
  File "C:\Users\1\AppData\Local\Programs\Python\Python38\lib\site-packages\django\core\mail\message.py", line 284, in send
    return self.get_connection(fail_silently).send_messages([self])
  File "C:\Users\1\AppData\Local\Programs\Python\Python38\lib\site-packages\django\core\mail\backends\smtp.py", line 102, in send_messages
    new_conn_created = self.open()
  File "C:\Users\1\AppData\Local\Programs\Python\Python38\lib\site-packages\django\core\mail\backends\smtp.py", line 62, in open
    self.connection = self.connection_class(self.host, self.port, **connection_params)
  File "C:\Users\1\AppData\Local\Programs\Python\Python38\lib\smtplib.py", line 258, in __init__
    raise SMTPConnectError(code, msg)

Exception Type: SMTPConnectError at /contact/
Exception Value: (421, b'Cannot connect to SMTP server 178.67.220.242 (178.67.220.242:587), connect error 10061')

【问题讨论】:

  • @Mohamed ElKalioby 你是对的。现在可以使用了

标签: python django sendmail


【解决方案1】:

你为什么把你的IP设置为EMAIL_HOST,这应该是Gmail从设置中设置的电子邮件服务器的IP,应该是'smtp.gmail.com'

【讨论】:

    猜你喜欢
    • 2020-10-24
    • 1970-01-01
    • 2016-07-20
    • 2017-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-10
    • 1970-01-01
    相关资源
    最近更新 更多