gpt4 book ai didi

nginx - 使用 nginx 启用 gzip 压缩

转载 作者:行者123 更新时间:2023-12-03 09:01:44 24 4
gpt4 key购买 nike

我正在尝试为我的网站组件启用 gzip 压缩。我有 ubuntu 11.04 服务器和 nginx 1.2。
在我网站的 nginx 配置中,我有这个

gzip打开;
#gzip_min_length 1000;
gzip_http_version 1.1;
gzip_vary on;
gzip_comp_level 6;
gzip_proxied 任何;
gzip_types text/plain text/html text/css application/json application/javascript application/x-javascript text/javascript text/xml application/xml application/rss+xml application/atom+xml application/rdf+xml;
#它是 gzip_buffers 16 8k;
gzip_buffers 128 4k; #我的页面大小是 4
gzip_disable "MSIE [1-6]\.(?!.*SV1)";

并且 Yslow 和谷歌速度措施建议我使用 gzip 来减少网络传输。
现在当我尝试 curl -I my_js_file我有

curl -I http://www.albawaba.com/sites/default/files/js/js_367664096ca6baf65052749f685cac7b.js
HTTP/1.1 200 正常
服务器:nginx/1.2.0
日期:2013 年 4 月 14 日星期日 13:15:43 GMT
内容类型:application/x-javascript
内容长度:208463
连接:保持事件
最后修改时间:2013 年 4 月 14 日星期日 10:58:06 GMT
变化:接受编码
到期时间:格林威治标准时间 2037 年 12 月 31 日星期四 23:55:55
缓存控制:max-age=315360000
语用:公共(public)
缓存控制:公共(public)
接受范围:字节

知道我做错了什么或者我应该怎么做才能获得压缩内容?

最佳答案

正如其他人所写,在您的服务器中启用 gzip 压缩是不够的——客户端还需要通过 Accept-Encoding: gzip 在其请求中请求它。 header (或其超集)。现代浏览器自动包含此 header ,但对于 curl,您需要在命令中包含以下内容之一:

  • -H "Accept-Encoding: gzip" : 你应该看到 Content-Encoding: gzip响应中的 header (可能需要输出带有 curl 的 -v 标志的 header ),以及一些看似乱码的内容输出,即实际的 gzip 流。
  • --compressed : 你应该仍然看到 Content-Encoding: gzip在响应 header 中,但 curl 知道在输出内容之前对其进行解压缩。
  • 关于nginx - 使用 nginx 启用 gzip 压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15999606/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com