smtplib - 无法建立连接,因为目标机器主动拒绝它
smtplib - No connection could be made because the target machine actively refused it
虽然我可以找到很多关于此失败的类似问题,但 suggestions/answers 对我的情况没有帮助,所以我正在寻求帮助。我有以下功能,它在我的开发机器上工作得很好(Windows 7)但是当我尝试在另一台机器上 运行 它时,它是 运行 宁 Windows 服务器2012 R2 Standard OS,我遇到了 "Errno 10061 - No connection could be made because the target machine actively refused it" 故障。
我试过禁用机器上的防火墙,但这没有帮助。我知道端口和 SMTP 服务器正在正确监听,因为我的开发机器上的代码相同。我该如何解决这个问题?感谢任何帮助
def send_email(user, pwd, recipient, subject, body):
gmail_user = user
gmail_pwd = pwd
FROM = user
TO = recipient if type(recipient) is list else [recipient]
SUBJECT = subject
TEXT = body
message = """From: %s\nTo: %s\nSubject: %s\n\n%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
try:
server_ssl = smtplib.SMTP_SSL("smtp.gmail.com", 465)
server_ssl.ehlo()
# server_ssl.starttls()
server_ssl.login(gmail_user, gmail_pwd)
server_ssl.sendmail(FROM, TO, message)
server_ssl.close()
print 'successfully sent the mail'
except:
print "failed to send mail"
问题是防火墙阻止了连接。一旦删除脚本工作
虽然我可以找到很多关于此失败的类似问题,但 suggestions/answers 对我的情况没有帮助,所以我正在寻求帮助。我有以下功能,它在我的开发机器上工作得很好(Windows 7)但是当我尝试在另一台机器上 运行 它时,它是 运行 宁 Windows 服务器2012 R2 Standard OS,我遇到了 "Errno 10061 - No connection could be made because the target machine actively refused it" 故障。 我试过禁用机器上的防火墙,但这没有帮助。我知道端口和 SMTP 服务器正在正确监听,因为我的开发机器上的代码相同。我该如何解决这个问题?感谢任何帮助
def send_email(user, pwd, recipient, subject, body):
gmail_user = user
gmail_pwd = pwd
FROM = user
TO = recipient if type(recipient) is list else [recipient]
SUBJECT = subject
TEXT = body
message = """From: %s\nTo: %s\nSubject: %s\n\n%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
try:
server_ssl = smtplib.SMTP_SSL("smtp.gmail.com", 465)
server_ssl.ehlo()
# server_ssl.starttls()
server_ssl.login(gmail_user, gmail_pwd)
server_ssl.sendmail(FROM, TO, message)
server_ssl.close()
print 'successfully sent the mail'
except:
print "failed to send mail"
问题是防火墙阻止了连接。一旦删除脚本工作