2

我正在将 Meteor.js 用于一个新项目。

起初它可以工作,但是现在当我运行流星时,它似乎开始正常,但是当我转到localhost:3000浏览器时会自动下载一个空文件。

我尝试清除缓存,重新启动计算机,重新安装节点并重新安装流星。我还尝试运行流星示例应用程序,并创建一个新应用程序,无论我得到与下载空文件相同的结果。斗智斗勇,有什么想法吗?

我在使用 Google Chrome 的 OS X lion 上。

编辑:

所以,在搞砸了一些之后,/usr/local/meteor/examples如果我使用sudo meteor --port <some arbitrary port>.

当我尝试使用我的应用程序时,它说它正在运行,但我仍然一无所获。

示例应用程序中来自curllocalhost 的标头给出:

HTTP/1.1 200 OK
content-type: text/html
connection: close
transfer-encoding: chunked

虽然我的标题是:

HTTP/1.1 200 OK
date: Mon, 11 Jun 2012 00:51:47 GMT
cache-control: public, max-age=31536000
last-modified: Sun, 10 Jun 2012 10:36:37 GMT
etag: "0-1339324597000"
content-type: application/octet-stream
accept-ranges: bytes
content-length: 0
connection: close

Edit2: 如果我明确抛出错误,看起来我会得到一个正确的错误页面。但是,如果没有错误,那么我的标题是错误的。

Edit3:* 或者可能是我的环境出现错误,示例应用程序不再运行,我得到了 Unexpected mongo exit code 127. Restarting.

Edit4:* 好的,所以 mongo 错误是无关的。我已经将问题追溯到 gzippo,特别是如果我注释掉: app.use(gzippo.staticGzip(path.join(bundle_dir, 'static_cacheable'), {clientMaxAge: 1000 * 60 * 60 * 24 * 365})); 在 /usr/local/meteor/app/server/server.js

然后有一个 CLEAR 缓存(开始一个新的私人会话)它可以工作!如果我的缓存不清晰,仍然会提供一个空白文件。

因此,未创建 static_cacheable 目录,这就是 gzippo 提示空下载的原因。

我不确定这是否应该在流星的 server.js 或 bundler.js 中进行修补......要提交一个错误

4

1 回答 1

8

提出问题:https ://github.com/meteor/meteor/issues/177 并进行了修复:https ://github.com/meteor/meteor/pull/179

这是一个问题,即 gzippo 期望的文件夹(静态缓存)不是由流星创建的。流星中的相关文件:app/server/server.js:61, app/lib/bundler.js:526

于 2012-06-11T18:42:47.737 回答