2

我正在寻找一种方法来改变 Meteor 加载 Mongo 数据库的方式。现在,我知道我可以在启动 Meteor(或导出它)时设置一个环境变量,但我希望有一种方法可以在代码中做到这一点。这样,我可以根据条件动态连接到不同的实例。

一个示例测试用例是代码解析 url 'testxx.site.com',然后根据 'textxx' 子域查找 URL,然后连接到该特定实例。

我已经尝试在服务器代码中设置 process.env.MONGO_URL ,但是当在客户端上执行时,它不会获取新值。

任何帮助将不胜感激。

4

1 回答 1

0

Meteor 在启动时立即连接到 Mongo(使用此代码),因此任何更改process.env.MONGO_URL都不会影响数据库连接。

听起来您正试图在多个域上运行一个 Meteor 服务器,并让它根据客户端的请求同时连接到多个数据库。这对于传统的服务器端脚本语言可能是可能的,但对于 Meteor 则不可能,因为服务器和数据库非常紧密地联系在一起,并且服务器在启动时基本上连接到一个主数据库。

*.meteor.com 托管现在正在做类似的事情,未来 Meteor 的 Galaxy 商业产品将允许您这样做 - 所有这一切都通过为每个子域启动单独的 Meteor 服务器来实现。

于 2014-06-24T15:56:43.040 回答