【问题标题】:Why mongodb on production is using local computer connection?为什么生产上的 mongodb 使用本地计算机连接?
【发布时间】:2021-02-15 13:54:43
【问题描述】:

我正在开发一个 react-admin 站点并使用 mongodb。当我将文件上传到服务器时,服务器上的生产版本似乎正在使用我的本地计算机 mongodb 连接。这是我的连接字符串:mongodb://localhost:27017/my-collection 如果我尝试从我的计算机访问一个站点,它可以工作,因为它使用本地计算机连接,如果我尝试从电话访问它,它不起作用,只显示Could not connect to the server

网站由nginx 提供服务并使用pm2 运行

有人可以帮忙吗?我做错了什么?

【问题讨论】:

  • 术语 localhost 指的是本地机器(应用程序正在运行的地方) - 如果在您的计算机上运行,​​则 localhost 指的是您的计算机。如果在服务器上运行,则 localhost 指的是服务器。这能回答你的问题吗?
  • @blurfus 我知道,不,它不能回答我的问题。那就是服务器上的'localhost'应该指代服务器mongodb实例,但它指的是我的localmashine服务器,这很奇怪
  • 是的,mongodb 也在服务器上运行
  • 你确定错误信息中的“server”指的是MongoDB服务器吗?这听起来更像是 nginx 而不是 MongoDB 的问题。或者该网站有指向 localhost 的 Web URL,因此它实际上加载了本地开发页面。
  • ...这显然是错误的。它连接到本地开发服务器(没有在手机上运行)。您需要将其更改为它在服务器上运行的地址。

标签: javascript node.js mongodb react-admin


【解决方案1】:

我不得不更改 react-admin dataProvider 中的 url。它有localhost:3001,但我不得不将其更改为myDomain.com:3001

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-17
    • 1970-01-01
    • 2019-06-27
    • 1970-01-01
    相关资源
    最近更新 更多