Yslow的A评级指南
这里测的是V2引擎,V1想拿A几乎不可能,一个CDN测试的F就可以轻松废了你的网站。
现在一个一个分析。
User fewer HTTP Requests:减少HTTP请求
图片、CSS、JS、flash等这些都需要增加http请求数,减少这些元素的数量能减少响应时间。
把多个JS、CSS尽可能合并压缩(除了JS库,那东西用别的网站上的缓存比较靠谱)
小图片尽可能拼在一起,利用CSS的background定位。
Use a Content Delivery Network 利用CDN技术
虾米CND技术?自己搜索去吧,反正是空间提供商的事情,和你没关系的,此项我毫无鸭梨的得了F。
Avoid empty src or href 不存在的空路径
类似于<img src=”">这样的链接不要出现。
Add an Expires headers 设置缓存控制
在.htaccess文件里面加一段
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault “access plus 7 days”
ExpiresByType image/x-icon “access plus 30 days”
ExpiresByType image/gif “access plus 30 days”
</IfModule>
服务器如果不支持mod_expires就不可以用了。
Compress components with gzip 设置GZIP压缩
在cPanel的网站优化里面选择第二项全部压缩就好了。
Put CSS at top CSS放头部
正常网页都应该这样吧?
Put JavaScript at bottom JS放脚下
反正我是放脚下,如果你的网页不是特别依赖JS的效果,还是把JS放脚下比较好。
Avoid CSS Expressions 避免CSS 表达式
每个CSS的教科书都会告诉你不要写Expressions,不解释了。
我是因为语法高亮插件自带了Expressions才得B,有时候为了兼容IE6,唉。。
Make Javascript and CSS external 使用外部JavaScript和CSS文件
当然要这么做。
Reduce DNS Lookups 减少DNS查找
减少网站从外部网站调用资源。
Minify Javascript and CSS
JS和CSS最小化,很多工具都可以用来压缩他们。
Avoid URL redirects 避免重定向
除了避免3XX类型的重定向,还有一个小问题,最好不要写aa.com/bb这样的网址,因为会被重定向到aa.com/bb/,虽然
Apache可以使用
mod_rewrite,但不这么写是最好的。
Remove duplicate javascript and CSS 删除重复脚本和CSS
最常见的就是多次加载jquery了,用jsview查看下就一目了然了。
Configure ETags 配置ETags
想知道ETags是什么Google之。
解决办法是 .htaccess里加入FileETag None之。
Make AJAX cacheable 设置AJAX的缓存
AJAX的信息读取是异步的,这也表示用户不一定会等待这异步的响应,为避免重复的AJAX请求,设置缓存是优化性能的一个好方法。
Use GET for AJX requests
AJAX用Get不要用Post,这个AJAX书里面都会介绍的。
Reduce the number of DOM elements 减少DOM元素数量
这个需要xhtml有个好的构架。
Avoid HTTP 404 (Not Found) error 避免出现404错误页面。
404对服务器还是用户都不好。
Reduce cookie size 减少cookie的大小
cookie控制在4K以内。
Use cookie-free domains 使用域名无关性的Cookie
这里是有关静态服务器的问题,主要是指一些静态文件比如说图片、CSS等等,比如说YAHOO,他的静态文件都在 yimg.com 上,客户端请求静态文件的时候,减少了 Cookie 的反复传输对主域名的影响。
又一个F,没办法,小网站。
Avoid AlphaImageLoader filter
避免AlphaImageLoader滤镜的使用。
如果为了实现IE6的PNG透明,忍吧。
Do not scale images in HTML 不要对图片进行缩放
W3C一直不提倡图片缩放,一方面是对服务器资源的浪费,另一方面也是对性能的浪费。
不过呢,由于用Windows Live Writer写博客,插图片时候默认是缩放的,没办法,只能B。
Make favicon small and cacheable 使图标尽可能小,并使用缓存。
这里指的是favicon.ico了,前面已经设置过了favicon.ico缓存。
最后,鄙视一下腾讯微博的广播站,只要你挂上了这个widget你的yslow就要降一级,具体请参见这里
使用参考:http://www.360doc.com/content/10/0727/14/1973531_41794378.shtml#