GAE上启用Gzip压缩
2009 11 14 06:41 PM 2384次查看
分类:Google App Engine 标签:Google App Engine, Python
接着我输出了这个头,发现本地开发服务器上并没效果:
start_response('200 OK', [('Content-type','text/html; charset=utf-8'), ('Content-Encoding', gzip')])
接着手动压缩了一下,发现乱码了,而且仍然没有输出gzip头:zbuf = cStringIO.StringIO()
zfile = gzip.GzipFile(mode='wb', compresslevel=9, fileobj=zbuf)
zfile.write(content)
zfile.close()
content = zbuf.getvalue()
不过部署后发现输出gzip头了,只是乱码没有解决。于是我读了下源码,发现开发服务器里会把Content-Encoding头去掉,而webapp也会删掉这个头。
再看了下文档,发现如果Accept-Encoding和User-Agent里标明能接受gzip,且有Content-Encoding: gzip头的话,服务器会自动压缩。
所以开启方法就很简单了,和我一开始所做的一样,只不过只能在生产服务器上生效。
向下滚动可载入更多评论,或者点这里禁止自动加载。