Django SMTP [Errno 111]连接被拒绝
我想从一个web应用程序使用django和sendgrid SMTP服务器发送电子邮件。它的工作原理局部精细,但当我尝试使用它pythonanywhere我得到Django SMTP [Errno 111]连接被拒绝
error: [Errno 111] Connection refused
从相关视图中的代码是
def contact(request):
if request.method == 'POST':
form = EmailForm(request.POST)
if form.is_valid():
mail = form.cleaned_data
send_mail(
'Automated Enquiry',
'A user is interested in part ' + mail['part'] + '.Their message: ' + mail['msg'],
mail['email'],
['[email protected]'],
fail_silently = False,
)
return render(request, 'manager/error.html', {'msg': "Thanks, we will be in touch as soon as possible"})
else:
part = request.GET.get('part', '')
form = EmailForm()
return render(request, 'manager/contact.html', {'form': form, 'part':part})
在我setting.py:
EMAIL_HOST = 'smtp.sendgrid.net'
EMAIL_HOST_USER = 'myuser'
EMAIL_HOST_PASSWORD = 'mypassword'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
它也没有从控制台工作。 任何帮助将不胜感激。
PythonAnywhere上的免费用户限制了对网站的whitelist的Internet访问,并且只允许HTTP/HTTPS协议,因此您无法通过免费帐户与sendgrid建立SMTP连接。
你可以从一个免费帐户使用Gmail,而pythonanywhere有instructions here。
,或者你可以切换到使用sandgrid HTTP API:https://sendgrid.com/docs/Integrate/Frameworks/django.html
非常感谢,无论如何,我正计划升级到黑客帐户,这将解决这个问题吗? – dwmyfriend
是的,它应该这样做。如果您需要任何帮助,请发送电子邮件至support @ – hwjp
尝试从控制台 – chakri
我尝试远程登录smtp.sendgrid.net 587,并获得远程登录远程登录SMTP服务器:无法连接到远程主机:拒绝连接@ chakri – dwmyfriend
我刚刚搜索了它,那就是问题所在,我应该在查询之前进行检查,非常感谢。 @chakri – dwmyfriend