cdn 的 gzip

对于大多数的 cdn 厂商来说,默认是不会开启 gzip 压缩的,不然没法赚钱了,这个跟之前闹的火热的 Heroku 为了赚钱修改路由一样的手法。

要判断 cdn 是否开了 gzip 很简单,通过 curl 既可完成:
$ curl -I -H "Accept-Encoding: gzip,deflate" "$URL" --silent | grep -i "Content-Encoding:"
从网上抄了简单的脚本:
gzipchk(){ curl -I -H 'Accept-Encoding: gzip,deflate' "$@" | grep –color 'Content-Encoding:'; }
$ gzipchk http://www.redhat.com

对于 apache 来说,需要开启 mod_deflate 或者 mod_gzip 这两个模块。
对于 nginx 来说,需要加上下面则个指令:
gzip  on;
当然,前提是编译的时候有 "HTTP_GZIP=YES" 选项。另外,如果想针对单独的 user agent 做设置,可以像下面这样:
gzip_disable "msie";

这里还提到了一个有趣的问题,作者下下来的文件是 file.gzip 文件,需要经过一个 pipe 才能查看:
$ curl "http://example.com" | gunzip
下面有人给出了答案,通过 –compressed 的方式

如果不会使用 curl,直接打开这个网址就好了。