欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

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

程序员文章站 2023-11-19 15:13:34
nginx实现静态压缩这种做法其实就像apache gzip压缩了,这种压缩是我们常见的一些事情了,下面我来介绍一些做法。 在搭建squid网页加速的时候,对于大的css...

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无效