我找不到您的配置有任何明显错误,通常 gzip on & gzip_types application/x-javascript 足以让您继续前进。如果一切正常,您将收到“Content-Encoding:gzip”返回给您。
请记住:我与 GOOGLE DEVELOPER TOOLS 的一致性更高(curl 的行为与浏览器不同)。
在 Chrome 中,右键单击并转到“检查元素”,然后转到“网络”(如果需要,请重新加载页面),然后单击资源并检查标题选项卡,输出应如下所示(注意内容编码是 gzip,是的):
Request URL:https://ssl.gstatic.com/gb/js/sem_a3becc1f55aef317b63a03a400446790.js
Request Method:GET
Status Code:200 OK (from cache)
Response Headersview source
age:199067
cache-control:public, max-age=691200
content-encoding:gzip
content-length:19132
content-type:text/javascript
date:Fri, 12 Apr 2013 06:32:58 GMT
expires:Sat, 20 Apr 2013 06:32:58 GMT
last-modified:Sat, 23 Mar 2013 01:48:21 GMT
server:sffe
status:200 OK
vary:Accept-Encoding
version:HTTP/1.1
x-content-type-options:nosniff
x-xss-protection:1; mode=block
无论如何,如果您确定您的内容没有被 gzip 压缩,我通常会通过以下方式快速启动并运行:
## Compression
gzip on;
gzip_buffers 16 8k;
gzip_comp_level 4;
gzip_http_version 1.0;
gzip_min_length 1280;
gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript image/x-icon image/bmp;
gzip_vary on;
您可以尝试使用此方法替换您的代码,和/或一次调整一个值以帮助您解决问题。
更改配置后记得重启或重新加载nginx。
如果您仍然被卡住,检查您的日志并查看是否有任何有趣的东西也可能很有用。