Nginx服务器实现数据静态压缩的方法

 更新时间:2016年1月27日 20:14  点击:1964

nginx实现静态压缩这种做法其实就像apache gzip压缩了,这种压缩是我们常见的一些事情了,下面我来介绍一些做法。

在搭建squid网页加速的时候,对于大的css 或者js要进行压缩,然后再进行缓存,这样能够提高减小下载量提高页面响应速度。如果你用的是squid 3.0以前的版本并且用的是 ngnix server的话可能会碰到如下问题: 不用squid直接打开页面则客户端返回的是压缩的状态,如果启用squid加速会发现下载下来的页面不是压缩状态。这里面主要是没有启动ngnix 的静态缓存模块(ngx_http_gzip_static_module)导致。

打开静态缓存问题就解决了

1.nginx编译选项

./configure --with-http_gzip_static_module

2.修改nginx.conf

gzip_static on;

gzip_http_version 1.1;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6] .";
gzip_vary on;

#找不到预压缩文件,进行动态压缩 

gzip on;  
gzip_min_length 1000; 
gzip_buffers 4 16k; 
gzip_comp_level 5; 
gzip_types text/plain application/x-javascript text/css application/xml; 
 
#gzip公共配置 

gzip_http_version 1.1 
gzip_proxied expired no-cache no-store private auth; 


对于支持gzip的请求反向代理缓存服务器将返回gzip内容,不支持gzip的客户端返回原始内容。 

复制代码 代码如下:
gzip_vary on;

1.gzip_static配置优先级高于gzip
2.开启nginx_static后,对于任何文件都会先查找是否有对应的gz文件
3.gzip_types设置对gzip_static无效

[!--infotagslink--]

相关文章