【问题标题】:What ENOTFOUND error in an http request, happening time to time, means?http请求中不时发生的ENOTFOUND错误意味着什么?
【发布时间】:2016-05-17 10:01:39
【问题描述】:

我有一个 nodejs 服务器,在托管的云机器上运行。一个http请求

var req = Http.request(options, function(res) { ... }

有选项

host: "www.mysite.com”    
port: "8080"
method: “GET”
path: “/someurl”

有时会回复此错误(假设十分之一)

{"code":"ENOTFOUND","errno":"ENOTFOUND","syscall":"getaddrinfo"}

现在,问题是这个错误可能意味着什么。

请求似乎是正确的(正确的路径,正确的端口,url 活跃和摇摆,路径中不包含 http 协议,该路径指向在同一台机器上运行的站点的 drupal 页面)并且它几乎可以在所有时间。有时,在没有明显原因的情况下,它会失败。

最近,我注意到,在机器上,关于 ipv6 的问题,我不得不在 sysctl 上禁用它以使事情正常进行。在有关 ipv6 的问题出现后,问题的准确性令人怀疑。也许这个错误是由机器本身的一些 dns 问题引起的(所以我不得不责怪我的主机)?

【问题讨论】:

    标签: node.js httprequest


    【解决方案1】:

    这是 DNS 错误,具体来说,Node 无法将主机名 "www.mysite.com" 解析为 IP 地址。

    这可能有多种原因:

    • 主机名无效
    • 您的网络连接有问题
    • 您的 DNS 服务器出现故障
    • 处理 "mysite.com" 的 DNS 服务器出现故障

    作为提示:虽然您的问题是有效的,但调试根本原因(DNS 问题)在 StackOverflow 上是题外话。

    【讨论】:

    • 当然,为此我会使用 serverfault.com ;) 我只需要知道是否可能是代码错误。非常感谢!!
    猜你喜欢
    • 2019-01-06
    • 1970-01-01
    • 2021-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-04
    相关资源
    最近更新 更多