Yslow优化记

2010-08-13 14:09:37 by 【6yang】, 122 visits, 收藏 | 返回

最近在匆匆忙忙的做一个小项目,无非是页面重构那些事,不过最近还是比较中意jquery,乐此不疲的学习着,山寨着,博友们的文章也让我学到了很多有用的东西,真的非常感谢你们 (路过)

下面来说说这个Yslow,其实想针对Yslow优化一下也是有点蛋疼,毕竟也算是在前端混的,不跟跟风就太掉价了,于是花了接近一个晚上的时间针对Yslow进行了小小的优化,说到“针对Yslow”我怎么感觉就像是在作弊 (无聊) ,没优化之前评分可是D啊,忘了截图了,哎,要喷的就喷把,伞打上了,来吧。

放出效果图,如下

没优化之前上面四个全是F,下面也有几个是B的,见招拆招,一一破解吧。

1.Make fewer HTTP requests

针对这一条的优化我把原来的很多CSS控制的小图片拼成了一张,当然还有几张拼不上来,有X轴又有Y轴的确实不好拼啊~~,然后就是js的合并,由于用了插件,有些js是插件来判断写入页面,所以也不是太好合并,于是留下了那个右下角那个大熊猫还有评分的插件没有合并,不是不想合并,是因为代码太多合并就会很乱,所以放弃。

2.Use a Content Delivery Network

这个不是我能左右的~~~不是F我还奇怪呢,电信,网通,铁通,移动。。。看到这些你就明白什么是CDN了

3.Add an Expires header

解释下就是设置过期的HTTP Header.设置Expires Header可以将脚本, 样式表, 图片, Flash等缓存在浏览器的Cache中.这个也是服务器设置的,我搜了半天才找到Apache服务器解决方法,在.htaccess文件里写入

<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 7 days"
ExpiresByType image/gif "access plus 30 days"
</IfModule>

服务器方面的事我也不是太懂,不过这段代码确实解决了我的问题,庆幸啊。。。

4.Gzip components

这个就是经常听见的Gzip压缩了,如何开启也是要在服务器搞定,我是cpanle的面板,设置起来很是方便,进入cpanel面板,找到“软件”那个选项,然后找到“优化网站”这个图标,点进去选择第二个“压缩所有内容”,然后更新设置就OK了~~

5.Put JS at the bottom

这个也是很常见的一个优化方法,把所有的js放到底部就行啦

———————————–分一下,再割一下————————————————-

我主要就是针对这几个方面来做的优化,效果还是比较明显的,css图片和js所增加的HTTP请求暂时减少不了,主题图片使用的比较多,这点我拼来拼去还是不能全部拼到一张图上,js因为插件的原因也调用的比较散,不好合并,于是针对第一条暂时只能优化到这里了。

现在的评分又回到了C,原因是启用了Google AdSense和百度联盟,为了测试,关于这个问题以后我会专门写一篇文章来说明,这两个广告联盟增加了很多的HTTP请求,也增加了Reduce DNS lookups和Add an Expires header,反正这玩意从Yslow看还是对网站速度有一定的影响。

昨天刚启用了gravatar头像缓存(来自Willin),由于我比较喜欢大头像,所以导致了缓存的图片大小不一,我用了一个很土的方法,把缓存的图片全部在缓存的时候缓存成大的,这样就不会有小图片变大后模糊的尴尬了,但是这也带来一个小问题,Do not scale images in HTML,Yslow的这一条就给了一个B,哎,默默接受吧。。。

分享到:
share

    图片原图

    loading

    loading