使用 Nginx Gzip Static 提升页面访问速度

/

Gzip 压缩输出减少了页面传输的字节数,所以对提升页面访问速度非常有帮助。Nginx 的 Gzip Static 模块在传统的 Gzip 压缩输出基础上,更进一步,直接从服务器硬盘读取预压缩好的 gz 文件进行传输,避免了像传统 Gzip 模块那样每次访问页面每次都要进行压缩。

简单设置:

location ~* \.(css|js)(\?ver=.*)?$ { 
	gzip_static on; 
	expires 3h; 
	gzip_http_version   1.1; 
	gzip_proxied        expired no-cache no-store private auth; 
	gzip_disable        "MSIE [1-6]\."; 
	gzip_vary           on; 
	add_header Cache-Control public; 
}

值得注意的是,Nginx Gzip Static 模块不会自动创建 gz 文件,需要手动创建。

gzip xxx.css

如果你的服务器因为某种原因不能使用 Nginx Gzip Static 模块,你也没必要耿耿于怀。事实上,Nginx Gzip Static 模块虽然对于页面访问速度有一定的提升,但是提升幅度是非常有限的,每次压缩后再传输比预读取 gz 文件传输慢不了多少,况且现在的主流浏览器都有缓存机制。

如何检测 Nginx Gzip Static 模块正在工作

这里就要祭出强大的 strace 啦,先找出 Nginx 的 PID,然后用 strace 跟踪:

使用 Nginx Gzip Static 提升页面访问速度

使用 Nginx Gzip Static 提升页面访问速度

显示 open … css.gz,证明 Nginx Gzip Static 模块正在工作。

Comments