1

我的流星应用程序在本地工作。当我捆绑它(使用meteor bundle myapp.tgz),将它上传到我的服务器并启动它时,在 Chrome 控制台上打开页面时出现以下错误:

Uncaught SyntaxError: Unexpected token <

在 Firefox 控制台上:

SyntaxError: syntax error
[Break On This Error]   

<!DOCTYPE html>

为了尝试找出错误的根源,我使用了一个正在工作的旧包。我可以看到问题是找不到 static_cachable 中的文件。

Meteor 仍在尝试使用旧包中的文件。

如果我将 static_cachable 中的新捆绑文件重命名为旧名称,那么它可以工作

我检查了捆绑文件夹根目录包含的所有文件,并且引用是正确的(它们指向新名称)。

是否有一些缓存保留对旧 static_caches 文件的引用?

4

3 回答 3

1

为避免该错误,必须在部署后重新启动 Meteor:

  1. rm -rf 捆绑包
  2. tar -zxf myapp.tar.gz
  3. cd 捆绑包/服务器/node_modules/
  4. rm -r 纤维
  5. npm install fiber@1.0.0
  6. 出口端口=32632
  7. 导出 MONGO_URL=mongodb://meteor: ** @localhost:18700/moviegrid
  8. 导出 ROOT_URL='mydomain.com'
  9. nohup 节点包/main.js &
于 2013-06-29T19:21:49.200 回答
0

这可能不是您的问题,但根据http://docs.meteor.com/#deploying

目前,bundle 只能在创建 bundle 的平台上运行。要在不同的平台上运行,您需要重新构建捆绑包中包含的本机包。为此,请确保您有可用的 npm,然后运行以下命令:

$ cd 捆绑包/服务器/node_modules

$ rm -r 纤维

$ npm install fiber@1.0.0

考虑在你的服务器上安装meteor,克隆你的应用程序目录并meteor run在目录中使用来查看应用程序是否在服务器上的开发中运行。

如果它在开发中成功启动,则将其捆绑在服务器上并使用这些文件。或者只是运行meteor --production

于 2013-06-20T01:23:30.660 回答
0

在本地加载应用程序时查看 javascript 控制台并检查是否没有错误。如果有,请在捆绑/部署之前更正它们。

于 2013-06-19T19:17:13.020 回答