注册账号后登录禁止信息

Login Forbidden message after registering account

我正在按照 Meteor 指南使用以下软件包设置登录系统:useraccounts:bootstrap useraccounts:flow-routing accounts-ui@1.1.9 accounts-password@1.4.0。当我使用 meteor-now 命令部署我的应用程序进行测试时,我能够注册一个帐户并登录到我的应用程序,但是在一段时间不使用该应用程序尝试重新登录后,我得到了 login forbidden消息,我注册的帐户似乎不存在了。我找不到发生这种情况的原因。我假设它与使用 meteor-now 进行部署有关,因为我的本地实例上似乎没有这个问题。

在本地主机上开发应用程序时,您已连接到本地数据库。您可以在环境变量 MONGO_URL.

中设置数据库连接参数

如果你使用 meteor-now 那么你的应用程序就部署好了。表示在Meteor云主机上编译安装code od application

https://www.meteor-now.com/

代码已传输,但数据和配置没有。有一些解决方案,您可以根据您想要实现的目标选择一个。

1) 将本地实例连接到生产数据库。您应该在本地机器上设置 MONGO_URL。

教程

How to connect mongodb clients to local Meteor MongoDB

How do I use an existing MongoDB in a Meteor project?

2) 您应该创建固定装置。我的意思是在服务器启动时执行的命令,如果他不存在则在数据库中创建用户。

对于你的情况,我会推荐第二种方法。

有一个通过fixtures创建用户的例子

Create a Meteor User in Fixtures with specific ID?

更新 1

安装 Meteor Now 后我看到这些输出而无需任何额外配置

关于link

的段落

https://github.com/jkrup/meteor-now#user-content-full-deploy-with-mongodb

解释数据丢失的可能原因。请详细说明您的 MONGO_URL 设置。

您确定在拥有数据和丢失数据之间不会进行部署吗?在此架构中,任何代码更新都会清除您的数据库。

更新 2

在我的屏幕截图中,存在与 meteor-now 与 now v2 不兼容有关的错误。

https://github.com/jkrup/meteor-now/issues/133

这没有连接到数据库,但可能是部分连接。现在,v1 是 Docker 图像的服务,v2 是 lambda 表达式的服务。降级后

npm install -g now@1

错误消失了,但我无法完成部署需要太多时间。下面是与来自 Mongo DB Atlas.

的数据库连接的示例
meteor-now -e MONGO_URL=mongodb+srv://<USER>:<PASSWORD>@<SUBDOMAIN>.mongodb.net/test?retryWrites=true