响应标头中的网络X内容编码,而不是内容编码

node.js React.js

宝儿

2020-03-23

我正在尝试使用Nginx和NodeJS服务器的Gzip压缩来压缩用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
};

第2691篇《响应标头中的网络X内容编码,而不是内容编码》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

1个回答
小哥飞云 2020.03.23

您的配置很好。有时,问题是由防病毒引起的,就像评论中提到的那样。尝试禁用防病毒软件,或者在防病毒程序中搜索“ HTTP扫描”选项。

NOD Internet Security会这样做。您可以按照以下说明禁用此选项,

1)开放 NOD Internet Security

2)单击设置,然后单击高级设置

3)搜索HTTP

4)禁用HTTP扫描程序

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android