pagespeed超级智能的谷歌网页优化利器

Share on:

最近做了一个项目,由于css,js优化不到位,导致首次打开页面特别的慢

用火狐查看,大部分js,css大部分时间耗在阻挡上面。

查了相关资料,这样解释**阻挡(Blocking):**每个浏览器有并发连接数量的上限(例如Firefox对每个host限制6个连接),如果当前建立的连接数已经超过上限,那么其余该请求会被阻塞,等待新的可以用的连接。

也就是多js,css太多了,那着手合并一下。

先是找了淘宝的combo,其实就可以满足现在我的需求,但是无意间发现了pagespeed

被其强大的功能所震惊了,而且是代码层面不需要任何修改

功能介绍页http://ngxpagespeed.com/ngx_pagespeed_example/

功能点

  • 图像优化:剥离元数据、动态调整,重新压缩
  • CSS 和 JavaScript 压缩、级联、内联
  • 小资源内联
  • 延迟图像和 JavaScript 加载
  • HTML 重写
  • 缓存周期延长

ng下安装pagespeed
https://developers.google.com/speed/pagespeed/module/build_ngx_pagespeed_from_source

ng下配置pagespeed
https://developers.google.com/speed/pagespeed/module/configuration

这是我的配置,开启combine_javascript貌似会影响网站js暂时先禁用了,估计是beta的原因

还有一个问题压缩合并js,css都有缓存,看了文档貌似没有提缓存时间的问题

如果需要刷新缓存,我是用重启nginx的方法

pagespeed on;
pagespeed RespectVary on;
pagespeed FileCachePath /var/ngx_pagespeed_cache;
pagespeed RewriteLevel CoreFilters;
pagespeed DisableFilters combine_javascript;
#pagespeed EnableFilters combine_css,sprite_images,combine_heads,collapse_whitespace,extend_cache,combine_javascript;
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
	add_header "" "";
}
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }

关于阻挡blocking的介绍

http://www.zhihu.com/question/24506110

http://ywwd.net/read-346

闽ICP备12003472号-7