我正在尝试使用 Gzip 与 Nginx 和 NodeJS 服务器一起压缩使用 Next.js 编写的代码。
当我curl -H "Content-Encoding: gzip"
用来验证时,配置似乎正在工作。
但是来到真正的浏览器(Chrome、Firefox),我Content-Encoding: gzip
在 Response Headers 中找不到该属性。
反而X-Content-Encoding-Over-Network: gzip
出现了。
我使用 Google Lighthouse 来测试该站点,但它责怪我启用了文本文件压缩。
其实,是什么X-Content-Encoding-Over-Network
意思?
我怎样才能让 gzip 与这个一起工作?
Nginx 设置:
gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.0;
gzip_types
text/css
text/plain
text/javascript
application/javascript
application/json
application/x-javascript
application/xml
application/xml+rss
application/xhtml+xml
application/x-font-ttf
application/x-font-opentype
application/vnd.ms-fontobject
image/svg+xml
image/x-icon
application/rss+xml
application/atom_xml;
Next.js 设置
// next.config.js
module.exports = {
compress: true
};