无法在Nodejs中压缩静态文件

Gzipping静态文件不能按需要工作(我认为)。 我用gzippoexpress.compress() 。 这两个gzipp文件一次。 没有Content-Encoding:gzip如果我再次刷新页面。

她是我如何设置我的快速应用程序:

  var gzippo = require('gzippo'); var express = require('express'); var app = express(); app.use(express.compress()); app.use(app.router); app.use(gzippo.staticGzip(__dirname + '/www')); 

这是Chromenetworking响应标题页面更新后显示的内容:

编辑完整的请求标题

  GET / HTTP/1.1 Host: myhost.com Connection: keep-alive Cache-Control: max-age=0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/ *;q=0.8 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.146 Safari/537.36 Accept-Encoding: gzip,deflate,sdch Accept-Language: en-US,en;q=0.8 Cookie: __utma=161759779.498387976.1381482631.1394444924.1394395346.80; __utmb=161759779.3.10.1394395346; __utmc=161759779; __utmz=161759779.1394444924.79.7.utmcsr=gtmetrix.com|utmccn=(referral)|utmcmd=referral|utmcct=/reports/myhost.com/5iXAs1ej/retest If-None-Match: "25020-1394452200000" If-Modified-Since: Mon, 10 Mar 2014 11:50:00 GMT 

如果我再次刷新它显示: 编辑完整的响应标题。

  HTTP/1.1 304 Not Modified x-powered-by: Express accept-ranges: bytes etag: "25020-1394452200000" date: Mon, 10 Mar 2014 10:51:45 GMT cache-control: public, max-age=0 last-modified: Mon, 10 Mar 2014 11:50:00 GMT 

如果我再次编辑页面,我得到Content-Encoding:gzip但只有一次。 我不知道我的快速设置是否有问题。

注:我服务我的网页: res.sendfile(__dirname + '/www/index.html');

如果我再次编辑页面,我得到内容编码:gzip,但只有一次。 我不知道我的快速设置是否有问题。

一切都很好。 您的服务器首次以gzip压缩格式发送文件。 第二次正常的etagcaching机制发挥作用,并且由于文件没有被修改,服务器告诉浏览器“你已经有了这个文件的正确版本”,因此服务器不需要发送响应身体在所有,只是头,因此不需要任何Content-Encoding头。