【问题标题】:MONGODB Failed to handshake with DB Mongo::Error::SocketError: EOFError: end of file reached (TLS)MONGODB 无法与 DB Mongo::Error::SocketError 握手:EOFError:到达文件结尾(TLS)
【发布时间】:2020-08-12 04:32:22
【问题描述】:

我有一个连接到 Mongo DB 数据库的 node.js 应用程序,

我正在使用 mongo URI 链接从我的网络应用程序进行连接。

我正在使用 DigitalOcean 并将应用程序部署到 Heroku,以检查我是否设法避免:

与 Mongo 错误握手失败

由于某种原因,一切都在本地运行良好,但是当我部署到生产环境时,访问生产 URL 时出现此错误:

MONGODB Failed to handshake with db-shard-00-02-xyz.mongodb.net:27017: Mongo::Error::SocketError: EOFError: end of file reached (db-shard-00-02-xyz.mongodb.net:27017, TLS)

我的 Heroku 配置文件:

production:
  clients:
    default:
      uri: <%= ENV['MONGODB_URI'] %>
      options:
        connect_timeout: 20

提前致谢。

【问题讨论】:

    标签: mongodb ssl production mongodb-atlas dev-to-production


    【解决方案1】:

    您可能需要检查您的生产 IP 是否被列入白名单,以便能够连接到您的 Mongo DB。

    您可以在以下位置编辑您的 mongo 配置:

    cloud.mongodb.com &gt; Network Access &gt; IP Whitelist

    您可以通过向所有人开放来测试这是否是问题:

    0.0.0.0/0

    希望对你有帮助!

    【讨论】:

      【解决方案2】:

      谢谢,@David 很有帮助,

      我会为需要视觉解释的人添加截图:

      【讨论】:

      • 用接受的答案找到它,但无论如何谢谢:)
      猜你喜欢
      • 2017-12-29
      • 2013-07-05
      • 2016-07-23
      • 1970-01-01
      • 1970-01-01
      • 2011-07-11
      • 2017-02-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多