使用Meteor启用Gzip压缩

5

使用Meteor时是否有一种通用方法来启用gzip压缩,而不管它是在本地托管、在meteor.com上托管还是在Heroku上托管?如果我只想在我的Heroku托管的Meteor应用程序上启用gzip压缩,该怎么办?

1个回答

2
在本地运行Meteor时,似乎没有使用Gzip压缩。
当执行meteor bundle命令时,生成的捆绑包包含一个服务器,该服务默认使用“gzippo”连接中间件[1]执行Gzip压缩。
您可以通过解压tarball并编辑server/server.js文件来查看(和修改)服务器文件。
[1]http://tomg.co/gzippo

是的,meteor bundle 生成的 tarball 是经过 gzip 压缩的。但是,1)打包组合的 JavaScript 没有经过 gzip 压缩,会减慢初始加载时间;2)更重要的是,客户端/服务器通信或/public内容没有经过 gzip 压缩,当发布较大数据集时会导致性能损失。 - David Wihl
1
非常抱歉我的回答没有更具体。关于您的评论,第一点是不正确的。从生产捆绑包中发送的3个初始资产中,只有HTML未经过gzip压缩。CSS和JS资产被合并、缩小和gzip压缩。JS是最重要的,因为它往往是最大的有效载荷。您可以通过您选择的工具注意到Content-Encoding响应头来验证这一点。 - alanning
#2 你说得对。目前(0.5.3版本),每个xhr响应并没有启用gzip压缩。正如我在答案中提到的,server.js文件是可以修改的。不幸的是,我对其工作原理的了解还不够深入,无法添加gzippo过滤器来处理xhr响应。 - alanning

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接