【问题标题】:Meteor Up (mup) on EC2 Deployment Different from Local App与本地应用程序不同的 EC2 部署上的 Meteor Up (mup)
【发布时间】:2015-05-12 04:23:53
【问题描述】:

在本地主机上,应用程序运行良好。

在 EC2 上,应用程序在 nginx 后面运行。它加载到浏览器中,但没有任何显示。浏览器控制台显示错误

TypeError: 'undefined' is not an object (evaluating 'Package["service-configuration"].ServiceConfiguration')

我不知道如何解决这个问题。任何帮助表示赞赏。

编辑

  1. NGINX 不是问题。如果我直接访问流星服务器,同样的行为。
  2. 运行“meteor add service-configuration”确实修复了上述错误,但没有错误并不能修复观察到的行为,即应用程序不会在 EC2 上呈现,而在 localhost 上启动时会呈现。 (错误消息是 EC2 和 localhost 之间唯一可见的区别。所以我怀疑这就是原因。现在这个假设一定是错误的。)所以问题仍然存在。

问题已解决。教训:

Meteor 有调试模式和生产模式。两者的行为可能不同。在 localhost 上,meteor 默认以调试模式运行。在部署到 meteor.com 或 per mup 时,默认为生产模式。要在本地主机上以生产模式运行流星,请运行meteor --production

【问题讨论】:

  • 看起来你还没有在服务器上安装你的包。尝试从您的项目根目录运行 mrt install 并重新启动您的应用程序以查看是否可以解决错误。

标签: nginx amazon-ec2 meteor meteor-up


【解决方案1】:

您似乎正在尝试访问浏览器上的 service-configuration 配置。

这些在客户端不可用。这也会影响您的本地主机应用程序,但它不会破坏您的应用程序(不会给您一个空白页面),因为流星处于调试模式。

在调试模式下 Meteor 文件不会被连接,所以即使在你的 js 控制台上抛出这样的错误也不会被注意到。在生产模式下,该错误会停止脚本的其余部分(因为所有内容都连接到一个文件中)

您需要确保执行此操作的代码仅在服务器端运行。一般来说,在客户端访问服务配置数据并不是一个好主意。

【讨论】:

  • 嗯。我仍然很困惑。我运行了 meteor add service-configuration 并且错误消息消失了。应用程序仍然没有呈现。为什么 localhost 和 ec2 上的行为不同?
  • 我认为您的评论很有帮助。但它提出了很多问题。我什至不知道流星有调试模式。这是在哪里记录的?然后:我需要能够注册客户端。因此我设置Accounts.config({forbidClientAccountCreation: false})。这是否导致需要服务配置?为什么在 localhost 上运行应用程序时没有错误?
  • 您还会在本地主机上看到此错误。您可以通过运行 meteor --production 而不是 meteor 在本地计算机上使用生产模式。我认为设置Accounts.config 很好。我不太确定是什么原因造成的。如果您以正常的meteor 模式在 localhost 上运行,您将看到控制台中抛出的错误,并从那里找到导致它的原因。它没有很好的记录,但如果你运行meteor run help,它就会被列为生产模式
  • 生产模式和调试模式几乎没有区别。主要是文件被连接成一个文件并被mified(css和js)。此错误只会停止脚本运行,例如 throw "someerror"; console.log("this wont run")。当您的文件被缩小后,代码将不会像文件被拆分时那样运行
  • 谢谢!现在一切都说得通了。
【解决方案2】:

看起来 Arunoda 和工作人员正在将 buildOptions.debug 设置添加到 MUP 的下一个版本,这应该允许您通过 MUP 部署并让它像在 localhost 上运行一样运行。请参阅Arunoda's answer to a related question 和(至少现在)documentation for the development version of MUP

【讨论】:

    猜你喜欢
    • 2015-11-01
    • 2015-11-10
    • 1970-01-01
    • 1970-01-01
    • 2015-03-18
    • 1970-01-01
    • 1970-01-01
    • 2014-02-12
    • 2016-01-21
    相关资源
    最近更新 更多