You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Flask-Mail发送邮件时遇[Errno -2] Name or service not known错误求助

解决Flask-Mail发送邮件出现「Name or service not known」错误的方法

这个错误是SMTP服务器地址无法被DNS解析导致的,按照以下步骤排查解决:

  • 替换占位符为真实SMTP服务器地址
    你当前app.config["MAIL_SERVER"] = "smtp....."是占位符,必须替换成和Thunderbird配置里完全一致的SMTP服务器地址(比如你的邮箱服务商提供的smtp.xxx.com格式地址)。

  • 验证服务器地址的可访问性
    在运行Flask应用的环境中,用命令测试地址是否能正常解析:

    nslookup 你的SMTP服务器地址
    # 或者用ping测试连通性
    ping 你的SMTP服务器地址
    

    如果返回「无法找到主机」类结果,说明地址填写错误,重新核对Thunderbird里的配置信息。

  • 确认端口与加密配置匹配
    确保Flask的端口和加密设置和Thunderbird完全一致:

    • 若Thunderbird中SMTP端口为587、连接安全选「STARTTLS」,你当前Flask的MAIL_PORT=587、MAIL_USE_TLS=True、MAIL_USE_SSL=False是正确的;
    • 若Thunderbird用465端口+SSL加密,需要修改为MAIL_PORT=465、MAIL_USE_TLS=False、MAIL_USE_SSL=True。
  • 排查网络环境限制
    确认运行Flask应用的机器没有被防火墙、代理或网络策略阻挡访问该SMTP服务器(比如服务器安全组是否开放了对应端口)。

内容的提问来源于stack exchange,提问作者Tlaloc-ES

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 10:39:32