Expressjs静态压缩未对css或JavaScript进行gzip压缩

5
我有一个在Expressjs中编写的简单服务器,代码如下:
'use strict';
var express = require('express');
var app = express();
var compression = require('compression');

app.use(compression());
app.listen(process.env.PORT || 3030);
app.use(express.static(__dirname + '/_site', {
  maxAge: '365d' 
}));
console.log('server running');

然而,尽管我的index.html页面已被压缩,但是没有任何链接(如css或js文件)以及脚本文件被压缩:Chrome Audits Tab请问我做错了什么吗?谢谢。

你是如何获得“启用Gzip压缩”建议块的? - wayofthefuture
1个回答

1
我也遇到过这个问题,可能有点晚了但我还是说一下。看起来情况是这样的,压缩只对某些大小的文件生效,这也很合理,因为有些文件不值得花时间去压缩。

Express JS compressed and uncompressed css files

正如您在屏幕截图中所看到的那样,只有大的CSS文件被压缩了,而小的文件则没有被压缩。在您询问之前,是的,所有的文件都是从公共文件夹而不是CDN提供的。

我的代码:

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'pug');

// Compress content
app.use(compression({
    level: 9,
    memLevel: 9
}));

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